Insertar hoja en un libro de excel desde una ruta variable

17/10/2012 - 13:31 por pomares71 | Informe spam
¡ Hola !
Tengo un libro de excel desde el que creo listados de alumnos por meses. Mediante una macro asociada a un cuadro de texto, para cada listado nuevo, inserto una nueva hoja, que es un archivo llamado "NUEVO LISTADO.xltm", y que se encuentra en la misma carpeta que el libro de excel donde es insertada la hoja nueva, hasta aqui todo funciona correcto, pero lo que yo quiero es que cuando copie y pege toda la carpeta donde se encuentran los dos archivos, en otra ubicacion, la macro siga funcionando, pero me marca error porque he cambiado la ruta del archivo.
Este es el codigo que utiliza la macro,
Sub NUEVO_LISTADO()

' NUEVO_LISTADO Macro

Application.ScreenUpdating = False
Application.DisplayFullScreen = True
Sheets.Add Type:="C:\Users\usuario\Desktop\COMEDOR VANE\Listados Comedor\NUEVO LISTADO.xltm"
Application.DisplayAlerts = False
Workbooks("LISTADOS COMEDOR 1 - copia.xlsm").Activate
Sheets("PAGINA PRINCIPAL 1").Visible = False
Sheets("Hoja1").Select
Application.ScreenUpdating = True
End Sub
¿alguien puede decirme como puedo hacer que la ruta sea una variable?

Preguntas similare

Leer las respuestas

#1 Abraham Valencia
17/10/2012 - 14:23 | Informe spam
Si todo esta siempre en la misma carpeta, basta usar 'Thisworkbook.Path' en lugar de usar la ruta completa como estas usando hasta ahora.

Abraham


El miércoles, 17 de octubre de 2012 06:31:18 UTC-5, pomares71 escribió:
Mostrar la cita
#2 pomares71
17/10/2012 - 22:29 | Informe spam
Abraham Valencia escribió el 17/10/2012 14:23 :
Mostrar la cita
Hola Abraham:

Gracias por contestar tan pronto, he hecho lo que me aconsejas, pero ma sale un mensaje de error, que dice:
Se ha producido el error '13' en tiempo de ejecucion:
no coinciden los tipos.
¿Por que ocurre esto?
el codigo queda asi:

Sub NUEVO_LISTADO()
Application.ScreenUpdating = False
Application.DisplayFullScreen = True
Sheets.Add Type:=ThisWorkbook.Path \ "NUEVO LISTADO.xltm"
Application.DisplayAlerts = False
Workbooks("LISTADOS COMEDOR 1 - copia.xlsm").Activate
Sheets("PAGINA PRINCIPAL 1").Visible = False
Sheets("Hoja1").Select
Application.ScreenUpdating = True
End Sub

Gracias, y perdona mi torpeza, pues no soy muy diestro con esto de la programacion, he aprendido trasteando, y leyendo en internet.
Ads by Google
Search Busqueda sugerida