Abrir un archivo excel y modificarlo

Ante todo un saludo de nuevo.
Tengo un archivo de excel en el cual quiero introducir unos valores, fecha del día, usuario que se inicia sesión en windows 2000, etc... Y después grabar el archivo. ¿Cómo puedo hacerlo desde visual basic?
Muchas gracias de antemano
Jadoc

1 respuesta

Respuesta
1
Si fui capaz de entender completamente tu pregunta, creo que quieres una macro que al abrir el archivo, ingrese (en alguna celda en particular) la fecha del sistema, quién inició Windows en otra celda y cuando termine que el archivo se guarde, una especie de Log casero, ¿si?
Bueno la siguiente macro se aproxima a lo que solicitas, de todos modos la idea es que tengas el concepto y luego la modifiques para que haga todo lo que necesitas...
Para que funcione, activa el editor de Visual Basic (presiona Alt+F11) y busca la hoja que dice "ThisWorkbook" (o "EsteLibro" según la versión")
Copia el código siguiente y pégalo en el panel desplegado a la derecha de su Editor de Visual Basic:
Private Sub Workbook_Open()
'jadoc, modifica aquí las direcciones de destino de los datos:
HojaDatos = "Hoja1"
CeldaFecha = "B1"
CeldaUsuario = "B2"
CeldaX = "B3"
'------------- Gracias
Application.DisplayAlerts = False
Application.ScreenUpdating = True
Sheets(HojaDatos).Select
Range(CeldaFecha).Value = Now 'coloca Dia y hora actual
Range(CeldaUsuario).Value = Application.UserName 'Coloca usuario de la aplicación
Range(CeldaX).Value = "X" '< aquí colocas otros datos...>"
ThisWorkbook.Save
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
Espero que esto ayude a resolver tu problema. Si así fuera, agradeceré un comentario y que la finalices.
(Recuerda que mantener cierto número de respuestas pendientes impide que otros usuarios puedan consultarme)
aclarando qué entendí mal o qué faltó.
Hola Fernando.
Me parece que no me expliqué bien, a ver si ahora hay más suerte, de todas formas lo que me dices me puede servir en parte.
La situación de partida es que el usuario no ha iniciado sesión en windows 2000 (que es el que uso). Lo que quiero es hacer una aplicación sencilla (*.exe) desde visual basic para que modifique un archivo de excel que se encuentra en el servidor de archivos (no es el equipo local). Mi pregunta es cómo modificar ese archivo cada vez que un usuario distinto inicia o cierra su sesión desde esa aplicación. Supongo que parte del código que me has proporcionado se podrá utilizar. El cuándo ejecutar esa aplicación es tarea del sistema operativo.
Espero haber podido transmitirte bien la pregunta.
Muchas gracias de antemano
Un saludo
Javier
Como notaste, mi solución está resuelta en un entorno de MS Excel y de Visual Basic for Applications orientado, claramente a Excel.
Lo que solicitas debería hacerse por fuera de la aplicación en cuestión.
Difícilmente encuentres en este panel alguien que arme un *.exe (tal vez Valedor pudiera). Creo que deberías plantear esta misma pregunta en otro panel de programadores específicos.
Espero que al menos, el código proporcionado te sirva como idea.
Que tengas un gran fin de semana.
Fernando

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas