Sigo sin resolver que la hoja se copie a una carpeta especifica.

Sigo sin poder intentar grabar una hoja en una carpeta especifica. Tengo una carpeta donde llevo el registro de las horas por año con sus respectivas hojas de cada mes. Lo que quiero es que me copie esa hoja cuyo nombre se toma de la celda "aj34" y la pegue en un nuevo libro. Solamente la hoja seleccionada. Es decir si quiero copiar solo la hoja del mes de marzo 2018, me copie esa sola hoja a un libro nuevo y que ese libro se llame con el mismo nombre de la hoja. Hice la siguiente macro pero no me la copia en la carpeta indicada.

Sub Guardar()
Application. ScreenUpdating = False
Application. DisplayAlerts = False
On Error Resume Next
arch = Range("aj34")
nomarchi1 = "C:\ users\ paola\ documents\ horas hunter\ planilla\ mensual\ año\ 2018"
ActiveSheet.Copy
ActiveWorkbook. SaveAs nomarchi1 & "\" & arch & ".xlsm", xl Open XML Workbook Macro Enabled
ActiveWorkbook.Close True
MsgBox ("El archivo se guardo con éxito en " & nomarchi1), vbInformation, "AVISO"
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub

Me termina abriendo el cuadro de diálogo guardar como y eso no es lo que quiero.

Necesito ayuda urgente.

Aclaración: La macro esta sin espacios, lo que pasa que la tuve que separar asi con espacios porque no se porque motivo, razón o circunstancia todoexpertos.com no me permite tantas palabras sin espacios. Me tira el mensaje "demasiadas palabras sin espacio" cuando en realidad si se trata de un código que esta en inglés y se escribe todo junto no debería salir ese error.

1 respuesta

Respuesta
1

pasa comenta la line on resume next,

Si no te lo guarda es porque debes estár poniendo mal la dirección

pon esta variable miruta=nomarchi1 & "\" & arch & ".xlsm

Usa control + G para ver ventana inmediato

En ventana pon

¿

¿

? Miruta

Fíjate la ruta que estás escribiendo con esa conjunción de variables y ahí te darás cuenta que pasa

Recuerda que existen caracteres reservados para windows por ejemplo: \ /? si en tu celda tienes estos tipos de caracteres debes reemplazarlos antes con otra carácter o eliminarlos, es muy posible que te este pasando eso

Por ejemplo si en la celda AJ tienes una fecha 31/12/2018

Y usas eso como nombre de archivo no va a grabar nada, porque la barra no es un carácter permitido, es posible te este pasando eso usa esto:

nom=replace(range("Aj34"),"/", "") o bien por otro caracter nom=replace(range("Aj34"),"/", "-") 

Ese ejemplo me parece conocido

https://youtu.be/CmVuz8Gl_7k

No me sale nada en la ventana inmediato. En la celda "aj34" esta esta fórmula =ai1&ai2 lo que hace es concatenar el mes de la celda ai1 con el año de la celda ai2 quedando formado el mes por 2018

Ahí lo pude solucionar copie la ruta directamente y funciona mil gracias.

Ves te tenías un problema en como generas la ruta

¿En la ventana inmediato puedes depurar las macros al poner el? Y el código o variable te da el nombre que toma entonces es fácil o más fácil detectar el error. Me alegro hayas solucionado tu dolor de cabeza ja ja

¡Gracias! Gracias por tu respuesta inmediata y te felicito por tu página web. Está muy buena. ¿El que habla en los videos eres tú? 

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas