Grabar automáticamente el nombre de la celda A1

Necesito una macro que al momento de grabar tome el dato de la celda A1 y lo utilice para nombre del archivo y aparte le agregue al nombre la fecha del día que se grabo

1 Respuesta

Respuesta
1
Private Sub Workbook_Open()
    If Range("Hoja1!A1").Value = Empty Then
       Range("Hoja1!A1").Value = ThisWorkbook.Name
       Range("Hoja1!A2").Value = Now()
    End If
End Sub
Private Sub Workbook_Open()
If Range("Hoja1!A1").Value = Empty Then
Range("Hoja1!A1").Value = ThisWorkbook.Name
Range("Hoja1!A2").Value = Now()
End If
End Sub
Con ALT F11 abri el microsoft Visual Basic y pegue la macro,
pero no pasa nada.
Que me faltaría hacer para que funcione la macro, y al momento de grabar tome
el dato del la celda A1 y le agregue la fecha del día de hoy para que sea el nombre del archivo .
Con alt f11 (ok) pincha en This workbok, despues arriba aparecen dos zonas " (General)" y "(Declaraciones)"
Pincha en general y cambiala a WorkBook, y automáticamente aparece en la otra Open
Y ya aparece
 Private  Sub Worbook_Open()
End Sub
En medio copia la función.
De todos modos esta función solo se "dispara" al abrir el excel.
Es decir guardas el excel con el nombre que quieras y cuando lo abras otra vez entonces es cuando verifica que la celda a1 no tenga valor y es entonces cundo escribe en a1 el nombre y en a2 la fecha y la hora actual (no la del fichero).
Si deseas que eso no te lo toquen hazlo sobe una hoja oculta y muestra un enlace de esas celdas.
Gracias por el tiempo que utilizaste al contestar
pero necesito que sea al grabar
ya encontré como hacerlo en el momento de grabar
te envío la macro.
Sub GuardarLibro()
Dim NombreArch as String
NombreArch=Range("A1") & Range("A2")& ".Xls"
ActiveWorkBook.SaveAs("C:\Ruta\" & NombreArch)
End Sub
Espero que sigas ayudando a la gente, gente como tu que dan su tiempo para ayudar a otras personas son valiosas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas