Como registrar los asesso a un Archivo Excel y las modificaciones por usuario el archivo se encuentra en red

Buenos días, tengo un archivo que controla horarios asistencias en excel al tenerlo en red para que varios usuario lo puedan utilizar, lo que busco es que tenga un registro de cada uno de ellos que modificaciones an hecho. Y la hora en que lo hizo.

Sin más que agregar espero su pronta respuesta :)

1 Respuesta

Respuesta

Copia la siguiente macro en donde dice this workbook, en mi caso grabo la información requerida en una hoja que se llama "Log"

Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long

Private Sub Workbook_AfterSave(ByVal Success As Boolean)
Dim strUserName As String
strUserName = String(100, Chr$(0))
GetUserName strUserName, 100
strUserName = Left$(strUserName, InStr(strUserName, Chr$(0)) - 1)
' Almacenas el usuario en la última fila libre de la columna A de la hoja Log
Worksheets("Log").Cells(Range("A1").CurrentRegion.Rows.Count + 1, 1).Value = strUserName
' Almacenas la hora en la última fila libre de la columna B de la hoja Log '
Worksheets("Log"). Cells(Range("A1"). CurrentRegion. Rows. Count, 2).Value = Time
End Sub

en esta imagen se explica mejor lo que busco amigo haber si tienes conocimientos de como se pueda realizar.

Lamento la tardanza en responder, estaba fuera de la ciudad.
Suponiendo que ambas hojas que me muestras están en un mismo archivo y que por ejemplo donde quieres grabar el usuario y hora se llame "log" (que podría estar oculta para no ser manipulada manualmente) y la otra hoja "vacaciones". SImplemente usa el código de arriba, ojo que se guardara el usuario solo cuando grabes el archivo... con respecto a verificar los cambios quizá una forma de hacerlo sería tener otra hoja llamada "respaldo vacaciones" y en caso tu hoja vacaciones sea diferente de los datos allí se almacenen las diferencias en otra celda y posteriormente tu copiarías el contenido de tu hoja "vacaciones" en "respaldo vacaciones" para que esta sea tu nuevo punto de partida.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas