Cargar hoja por GetOpenFilename y copiar columnas especificas
Anteriormente me ayudaste con el siguiente código:
Sub CargarHoja()
Dim Hoja As Object
Application.ScreenUpdating = False
Dim X As Variant
X = Application.GetOpenFilename _
("Excel Files (*.xl*), *.xl*", 2, "Abrir archivos", , True)
If IsArray(X) Then
A = ActiveWorkbook.Name
For y = LBound(X) To UBound(X)
Application.StatusBar = "Importando Archivos: " & X(y)
Workbooks.Open X(y)
b = ActiveWorkbook.Name
For Each Hoja In ActiveWorkbook.Sheets
Hoja.Copy after:=Workbooks(A).Sheets(Workbooks(A).Sheets.Count)
Next
Workbooks(b).Close False
Next
Application.StatusBar = "Listo"
Call Unir
End If
Application.ScreenUpdating = False
End Sub
Sub Unir()
Dim Sig As Byte, Eliminar As Boolean
For Sig = 2 To Worksheets.Count
Worksheets(Sig).UsedRange.Offset(1).Copy _
Worksheets(1).Range("A1048576").End(xlUp).Offset(1)
Next
Application.DisplayAlerts = False
For Sig = 2 To Worksheets.Count
Worksheets(2).Delete
Next
Application.DisplayAlerts = True
End SubLa macro me funciona a la perfección, el tema es que quisiera que al cargar la hoja SOLO me copieunas columnas en especifico que son 6 de 39 (A, C, E, B ,G, H, I), será posible realizar dicha función?
1 respuesta
Respuesta de Programar Excel