Problemas con macro
Hola buenas tardes:
Me estoy iniciando en el mundo de las macros y me he encontrado con un problema en el cual estoy atascado. ¿Me podrías ayudar?
Tengo una plantilla sobre la que trabaja el usuario (libro excel con varias hojas), en la última hoja quiero crear un botón mediante el cual me cree un archivo excel en una ruta determinada. En C:, por ejemplo. Además, me gustaría que el nombre del archivo que se guardsa fuese en función del valor de una celda. Cuando pulse el botón se creará el archivo en esa ruta, pero no estará abierto, la plantilla seguiría abierta. OTROde los problemas que encuentro es que en la plantilla tengo varias macros asociadas a botones y en el archivo generado me gustaría que no apareciesen.
He estado tocando un poco y he llegado hasta aquí
Private Sub CommandButton3_Click()
Application.ScreenUpdating = False
Dim ruta As String
Dim Nombre As String
Dim wb As Workbook
Nombre = "Emisiones_" & Sheets("Inicio").Cells(4, 13)
ruta = ThisWorkbook.Path
Set wb = ActiveWorkbook
Sheets("vehiculos").Shapes("CommandButton2").Select
Selection.Delete
Sheets("TOTAL").Shapes("CommandButton3").Select
Selection.Delete
Sheets("TOTAL").Shapes("CommandButton2").Select
Selection.Delete
With wb
.SaveAs ruta & Nombre & ".xls"
.Close
End With
ActiveWorkbook.Open
Set wb = Nothing
Application.ScreenUpdating = True
End Sub
Pero tengo problemillas.
1º me cierra el archivo de origen, y yo quiero que se mantenga abierto. Sólo quiero que se mantenga cerrado el creado
2º no me graba el archivo en la misma ruta, sino un nivel detrás del excel que estoy ejecutando.
3º no me lo graba con el nombre que quiero. Me añade al principio del nombre, el nombre de la carpeta donde tengo el archivo original.
4º me sigue apareciendo una de las macros en el archivo final. Es un botón que abre un formulario... No se si tendrá que ver algo.
Muchas gracias
Me estoy iniciando en el mundo de las macros y me he encontrado con un problema en el cual estoy atascado. ¿Me podrías ayudar?
Tengo una plantilla sobre la que trabaja el usuario (libro excel con varias hojas), en la última hoja quiero crear un botón mediante el cual me cree un archivo excel en una ruta determinada. En C:, por ejemplo. Además, me gustaría que el nombre del archivo que se guardsa fuese en función del valor de una celda. Cuando pulse el botón se creará el archivo en esa ruta, pero no estará abierto, la plantilla seguiría abierta. OTROde los problemas que encuentro es que en la plantilla tengo varias macros asociadas a botones y en el archivo generado me gustaría que no apareciesen.
He estado tocando un poco y he llegado hasta aquí
Private Sub CommandButton3_Click()
Application.ScreenUpdating = False
Dim ruta As String
Dim Nombre As String
Dim wb As Workbook
Nombre = "Emisiones_" & Sheets("Inicio").Cells(4, 13)
ruta = ThisWorkbook.Path
Set wb = ActiveWorkbook
Sheets("vehiculos").Shapes("CommandButton2").Select
Selection.Delete
Sheets("TOTAL").Shapes("CommandButton3").Select
Selection.Delete
Sheets("TOTAL").Shapes("CommandButton2").Select
Selection.Delete
With wb
.SaveAs ruta & Nombre & ".xls"
.Close
End With
ActiveWorkbook.Open
Set wb = Nothing
Application.ScreenUpdating = True
End Sub
Pero tengo problemillas.
1º me cierra el archivo de origen, y yo quiero que se mantenga abierto. Sólo quiero que se mantenga cerrado el creado
2º no me graba el archivo en la misma ruta, sino un nivel detrás del excel que estoy ejecutando.
3º no me lo graba con el nombre que quiero. Me añade al principio del nombre, el nombre de la carpeta donde tengo el archivo original.
4º me sigue apareciendo una de las macros en el archivo final. Es un botón que abre un formulario... No se si tendrá que ver algo.
Muchas gracias
1 respuesta
Respuesta de deathwatch
1