¿Existe una instrucción de ejecucióon en VBA más rápida que for each?
Caballeros y Damas muy buenas tardes:
MI pregunta surge a raíz que tengo esta macro:
B = Range("C1").Text
C = Range("C2").Text
D = Range("C3").Text
E = Range("C4").Text
F = Range("C5").Text
G = Range("C6").Text
Dim lRow As Integer
lRow = Range("A" & Rows.Count).End(xlUp).Row
For Each cell In Range("A1:A" & lRow)
If Left(cell, 1) = 1 Then Workbooks.Add.SaveAs Filename:=B & cell.Value & ".xlsx"
If Left(cell, 1) = 2 Then Workbooks.Add.SaveAs Filename:=C & cell.Value & ".xlsx"
If Left(cell, 1) = 3 Then Workbooks.Add.SaveAs Filename:=D & cell.Value & ".xlsx"
If Left(cell, 1) = 4 Then Workbooks.Add.SaveAs Filename:=E & cell.Value & ".xlsx"
If Left(cell, 1) = 5 Then Workbooks.Add.SaveAs Filename:=F & cell.Value & ".xlsx"
If Left(cell, 1) = 6 Then Workbooks.Add.SaveAs Filename:=G & cell.Value & ".xlsx"
ActiveWindow.Close
Next cell
Application.ScreenUpdating = screenUpdateState
Application.DisplayStatusBar = statusBarState
Application.Calculation = calcState
Application.EnableEvents = eventsState
ActiveSheet.DisplayPageBreaks = displayPageBreaksState
End Sub
Esta macro debe recorrer los datos de la columna A, y dependiendo lo que este escrito en cada celda, crea un archivo con los nombres de cada celda, son casi 800 archivos, y aunque esta macro funciona pregunto si hay otra forma de que haga lo mismo pero mucho más rápido.
Las variables de la B, a la G, es la ruta donde debe crear los archivos