Corrección de macro para crear y copiar hoja a determinada carpeta
Publicado por JoaoM (58 intervenciones) el 12/10/2015 18:34:57
Hola amigos
Tengo esta macro la cual crea carpeta y sub carpeta pero:
1º Si la carpeta C:\trabajo ya existe, manda error en esa linea
2º Quiero que para copiar la hoja, no tenga el nombre especifico de la hoja si no que busque nombre de hoja, Sheets.name, (WorkSheet.name (creo)) es decir, si la hoja no es la misma a copiar, tendria que a cada momento cambiar su nombre en la macro
3º Que la ruta sea una sola, es decir, que ruta haga referencia a
las 3 en una sola linea. Trate de hacerlo pero siempre manda error
Gracias
Tengo esta macro la cual crea carpeta y sub carpeta pero:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Sub CreaCarpetas()
Application.DisplayAlerts = False
Application.ScreenUpdating = False
MkDir "C:\trabajo" ' SI YA EXISTE LA CARPETA, MANDA ERROR
ruta = "C:\trabajo\"
año = Format(Date, "YYYY")
mes = Format(Date, "mmmm-YYYY")
On Error Resume Next
MkDir ruta & "\" & año
MkDir ruta & "\" & año & "\" & mes
On Error GoTo 0
'
ruta = ruta & año & "\" & mes & "\"
arch = "Parte.xlsx" 'Aqui el auto-nombre de hoja HOJA.NAME\.XLSX
Sheets("Parte").Copy 'AQUI EL AUTONOMBRE DE HOJA HOJA.NAME
ActiveWorkbook.SaveAs Filename:=ruta & arch, FileFormat:=xlOpenXMLWorkbook
ActiveWorkbook.Close
Application.ScreenUpdating = True
Application.DisplayAlerts = True
MsgBox "Hoja copiada"
End Sub
2º Quiero que para copiar la hoja, no tenga el nombre especifico de la hoja si no que busque nombre de hoja, Sheets.name, (WorkSheet.name (creo)) es decir, si la hoja no es la misma a copiar, tendria que a cada momento cambiar su nombre en la macro
3º Que la ruta sea una sola, es decir, que ruta haga referencia a
1
ruta = "C:\trabajo" & format(Date, "yyyy") & format(Date, "mmmm-yyyy")
las 3 en una sola linea. Trate de hacerlo pero siempre manda error
Gracias
Valora esta pregunta


0