05 febrero 2010

Macro: Cómo actualizar datos de un archivo de Excel a otro archivo externo

Sub UpdateData()
   'Desactiva la pantalla de inicio de Excel
   Application.ScreenUpdating = False

   Dim wsSheet As Worksheet
   Dim rnStart As Range

   Set wsSheet = ThisWorkbook.Worksheets("MySourceSheet")

   'Abrimos el archivo en el que vamos a salvar la información
   Application.Workbooks.Open ("C:\ArchivoAModificar.xls")
   'Le ponemos el valor que deseamos salvar
   Range("[ArchivoAModificar.xls]MyDestinationSheet!A1").Value = wsSheet.Range("A1").Value
   'Salvamos el archivo
   'NOTA: El valor es el número 2 porque el 1 es la aplicación principal donde
   'se esta corriendo el Macro, y el 2 es el archivo externo donde queremos
   'salvar la información
   Application.Workbooks.Item(2).Save
   'Cerramos el archivo.
   Application.Workbooks.Item(2).Close

   ThisWorkbook.Save
End Sub

01 enero 2010

Primer día del año, primer post....

Bueno como hoy comienza año nuevo me dió por hacer un post, como quien dice comenzar con el pie derecho...qué espero para este año?...bueno éxitos como dicen...Dios primero que mucha salud y muchos éxitos para mi esposa, mi hijo, mi familia, amigos, todos y para mí...a nivel de este blog que nadie lee, o bien que sólo leen cuando hago spam de un nuevo post...jejejeje....espero poder trabajar en dos proyectos....uno personal y otro de un contacto que me pasaro un dato....así que bueno....espero poder hacer actualizaciones de mis avances...o bueno hacer actualizaciones de algo nuevo que me encuentre...por qué mantengo este blog activo?...porque me sirve como para poder tener noticias que considero interesantes guardadas en algún lado...además que considero que es un buen ejercicio para redactar, hacer resúmenes o bien para comprender mejor algo. Bueno creo que hasta aquí llego este post.

Feliz Año nuevo, bendiciones para todo el mundo, sin importar si lo lean o no!

02 octubre 2009

Redes Wireless utilizados como Rayos-X


 Leo en TechnologyReview que en una investigación de la Universidad de Utah pudieron ver lo que sucede en un cuarto a puerta cerrada mediante las variaciones en la fuerza de la señal de la red wireless.

(Imagen tomada de TechnologyReview, si saben lo que es me dicen)

Los investigadores Joey Wilson y Neal Patwari desarrollaron una técnica llamada varianza basado en imágenes de tomografía de radio, que la idea es que la fuerza de la señal en cualquier punto de una red es la suma de todas las rutas de las ondas de radio que pueden tomar para llegar al receptor; cualquier cambio en el volumen de espacio a través del cual la señales pasa (movimiento de una persona), hace que la fuerza de la señal varie, por lo que con muchas señales recogidas por varios receptores es posible construir una imagen del movimiento dentro del cuarto.

La prueba la realizaron con 34 nodos inalámbricos (IEEE 802.15.4, protocolo de redes de área personal (hogares)), y fueron capaces de localizar objetos en movimientos en la sala a menos de un metro, Wilson y Patwari dicen que existe gran potencial de mejorar la precisión y reducir el número de nodos.

Definitivamente va a tener mucho potencial, pudiéndose usar en algún escenario de civiles en peligro, buscar personas en escombros, etc.; lo único que deja pensando es la parte de la privacidad o si alguien la utilizaría para robar una casa o banco.

Pero bueno, por mientras sólo queda utilizar lo que está a nuestro alcance:




Fuente:
http://www.technologyreview.com/blog/arxiv/24193/

01 octubre 2009

No puedo crear directorios llamados PRN, CON, AUX, etc.



Quizás noticia vieja para algunos (noticia nueva para mí), y es que Windows *no* deja crear directorios o archivos con los nombres: CON, AUX, NUL, PRN, LPT1..LPT9, COM1...COM9. La razón de esto es porque son palabras reservadas, esto quiere decir que son palabras que las utiliza el sistema operativo (en este caso Windows) para nombrar a ciertos dispositivos, por lo que no permite su utilización para que no hayan conflictos. Y es que esto viene desde el sistema operativo DOS en los 80s.





Algunas de estas palabras reservadas son:
  • CON: Monitor
  • PRN: Impresora
  • AUX: Dispositivo Auxiliar
  • COM0, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9: Puertos seriales de comunicación.
  • LPT0, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, LPT9: Puertos paralelos de impresión.
  • NUL: Valor nulo o vacío.
Fuente: http://channel9.msdn.com/shows/ButWhy/You-cant-name-a-folder-con-But-Why/

02 septiembre 2009

El tetris te vuelve inteligente!



Mientras algunas cosas te hacen idiota otras parece que te vuelven más listo, y es que según un estudio del psicólogo Richard J. Hanier, el jugar Tetris te hace más inteligente.

El estudio se realizó en un grupo de 26 niñas que se dedicaron a jugar Tetris por 3 meses. Eligieron mujeres porque los hombres tienden a tener más experiencia en relación a juegos de computadora, por lo que haría más difícil detectar cambios en el cerebro después de la práctica.

Según la "Red de Investigación de la Mente" las menores que practicaron con ese juego mostraron "mayor eficiencia cerebral y, comparadas con otras niñas en el grupo de control, también mostraron un engrosamiento de la corteza cerebral", es decir la materia gris.

Así que les dejo aquí un link para que jueguen Tetris en línea.

http://www.play-tetris-online.com/tetris4.html

Tetris es un juego creado por en 1984 y programado por Alexey Pajitnov, quien entonces trabajaba en la Academia de Ciencias de la Unión Soviética.

Tetris se puede aplicar a la vida diaria, es como cuando vas a meter tu caja de almuerzo en el saturado refrigerador del trabajo, ahí a veces tienes que hasta sacar las cajas de almuerzo de tus compañeros y acomodarlas para que quepan todas incluyendo la tuya. Ya lo decía Homero, "Para algo servirán tantas horas de jugar Tetris".



Fuente:
http://www.biomedcentral.com/1756-0500/2/174/abstract
http://www.biomedcentral.com/content/pdf/1756-0500-2-174.pdf
http://www.minutouno.com/1/hoy/article/115752-Afirman-que-el-Tetris-es-positivo-para-el-cerebro/

Cómo hacer que Firefox inicie más rápido?


Firefox cuando inicia toma su tiempo para arrancar, y aun un poco más si somos de los que tenemos nuestras 3 o más páginas favoritas para que carguen apenas comienza.

Les voy a pasar un tip que me comentaron sobre cómo hacer para optimizar Firefox y que arranque un poco más rápido, y luego otro tip que me encontré por internet sobre cómo hacer que Firefox libere un poco la memoria.

  • Optimización de Firefox para un inicio más rápido

En una pestaña nueva escriba "about:config" y presione la tecla "Enter".

Se le presentará una ventana advirtiendo que debe de tener cuidado al realizar algún cambio, por lo que hay que presionar el botón de "I'll be careful, I promise!".

Cuando cargue la página se le mostrarán todas las opciones de configuración del Firefox, como sólo vamos a modificar 3 de ellas vamos a utilizar la casilla de filtro (Filter); por lo que escribiremos la palabra "network.http.pipe". Conforme vayamos escribiendo esas palabras veremos como el filtro se comenzará a aplicar e irá mostrando lo que ocupamos.

El primer cambio que haremos será cambiar el valor de la variable "network.http.pipelining" en "true", para esto vamos a hacer doble click sobre la línea.



Ahora realizaremos el segundo cambio seleccionando la opción "network.http.pipelining.maxrequests" y haciendo doble click sobre la línea;
esto nos abrirá una ventana para que digitemos el máximo de solicitudes deseado, podemos poner unas 30 en vez de 4.
Finalmente el la casilla de "Filter" vamos a escribir "network.http.proxy.pi".


Seguidamente seleccionaremos la opción de "network.http.proxy.pipelining", y haciendo un doble click sobre la línea cambiaremos su valor a "true".

* NOTA: Para que el cambio funcione debe de reiniciar el Firefox.

Que fué lo que hicimos?, bueno, primero hablemos sobre lo que es "pipelining" o "segmentación". Es una técnica usada en el diseño de computadoras y dispositivos electrónicos para incrementar su rendimiento (el número de instrucciones que puede ejecutar por unidad de tiempo).

La idea fundamental es dividir el procesamiento de una instrucción en una serie de pasos o procesos independientes que tienen un mismo final. Esto permite que sea más rápido el procesamiento a diferencia de realizarlo uno a uno en forma secuencial. El término "pepiline" o "tubería" o "cañería" se refiere a que cada paso lleva datos que estan conectados con el siguiente paso y se unen al final, cómo una tubería lleva el agua y se conectan con la siguiente tubería.

Ahora bien el "network.http.pipelining" en "true" le dice al Firefox que cuando inicie y cargue las pestañas con las páginas no haga las conexiones a las páginas de forma secuencial, si no como en procesos independientes; el "network.http.pipelining.maxrequests" define el máximo de solicitudes en "pipelining" que se van a realizar; y finalmente el "network.http.proxy.pipelining" es simplemente para habilitar esta funcionalidad en servidores con proxy.

  • Habilitar la liberación de memoria.

Cuando por un determinado tiempo se deja de utilizar una aplicación, Windows pasa esa aplicación de memoria al disco duro (a esto se le llama "swap") con el fin de liberar la memoria para usarla en los programas que se encuentran activos, y en el momento que uno vuelve a hacer click sobre la aplicación, Windows hará el proceso inverso, que es para ese programa pasar del disco duro a memoria lo que estaba necesitando anteriormente.

Entonces, Firefox *no* hace eso, Firefox *no* deja que Windows libere la memoria si este se encuentra inactivo por un periodo prolongado; por lo que si usted es de los que abren el Firefox y a veces puede pasar mucho rato que usted ni lo utiliza pero le gusta tenerlo ahí abierto, esta opción puede que le funcione.

Accese el "about:config" como se explicó anteriormente, busque la opción "config.trim_on_minimize" usando la casilla de "Filter".

Si no la encuentra dele click derecho sobre la superficie vacía, seleccione la opción de "New" y luego click sobre la opción de "Boolean".

Escriba el nombre de "config.trim_on_minimize" y presione el botón de "Ok".

Seleccione la opción de "true" y haga click sobre el botón de "Ok".

* NOTA: Para que el cambio funcione debe de reiniciar el Firefox.

Fuente:
http://kb.mozillazine.org/Network.http.pipelining
http://kb.mozillazine.org/Network.http.pipelining.maxrequests
http://kb.mozillazine.org/Network.http.proxy.pipelining
http://kb.mozillazine.org/Config.trim_on_minimize

28 agosto 2009

Cómo agregar o habilitar el "Solution Configuration" y el "Solution Platforms" en VS Express