Macro que pase hoja a hoja y hacer ka rutina
Hola no se si me puedas ayudar lo que pasa es lo siguiente tengo una macro en un libro que me abre otro del cual extraigo informacion y queda registrada en mi macro pero eso ya lo tengo lo que necesito es que en el libro que yo consulto este trea muchas hojas las cuales tienen el mismo formato todas y necesito pasar por ejemplo: hoja1 - hace mi rutina ahora pasa a la hoja 2 y hace mi rutina y asi sucesivamente hasta finalizar las hojas y que en mi macro (otro libro) quedeen cada fila lo que copie que eso ya lo hace muestro el codigo que tengo solo me falta anexarle las instrucciones para que pase de hoja en hoja y en cada una me ejecute mi rutina.
Sub DATOS()
Dim stArchivoElegido As Variant
Dim a As Variant
Dim b As Variant
Dim c As Variant
Dim d As Variant
Dim e As Variant
Dim f As Variant
Dim g As Variant
Dim h As Variant
Dim i As Variant
Dim j As Variant
Dim k As Variant
Dim l As Variant
stArchivoElegido = Application.GetOpenFilename("Hoja Excel , *.xls*", _
, "INGRESE SU ARCHIVO PARA EJECUTAR")
Workbooks.Open stArchivoElegido
stArchivoElegido = ActiveWorkbook.Name
ActiveWindow.ScrollRow = 1
ActiveWindow.WindowState = xlNormal
Rem CAMPO DE FECHA DE PAGO
Range("J15:K15").Select
Selection.Copy
Windows("CONSOLIDADO11").Activate
Range("B18").Select
ActiveSheet.Paste Link:=True
Rem CAMPO DE NOMBRE DE BENEFICIARIO
Workbooks(stArchivoElegido).Activate
Range("K26:U26").Select
Application.CutCopyMode = False
Selection.Copy
Windows("CONSOLIDADO11").Activate
Range("C18").Select
ActiveSheet.Paste Link:=True
Rem CAMPO DE NIT O CEDULA
Workbooks(stArchivoElegido).Activate
Range("B26:D26").Select
Application.CutCopyMode = False
Selection.Copy
Windows("CONSOLIDADO11").Activate
Range("D18").Select
ActiveSheet.Paste Link:=True
Rem CAMPO DE ESTADO DE PAGO
Workbooks(stArchivoElegido).Activate
Range("J16:K16").Select
Application.CutCopyMode = False
Selection.Copy
Windows("CONSOLIDADO11").Activate
Range("E18").Select
ActiveSheet.Paste Link:=True
Rem CAMPO DE Nº DE OBLIGACION
Workbooks(stArchivoElegido).Activate
Range("U16:V16").Select
Application.CutCopyMode = False
Selection.Copy
Windows("CONSOLIDADO11").Activate
Range("F18").Select
ActiveSheet.Paste Link:=True
Rem CAMPO DE Nº ORDEN DE PAGO
Workbooks(stArchivoElegido).Activate
Range("B15:D15").Select
Application.CutCopyMode = False
Selection.Copy
Windows("CONSOLIDADO11").Activate
Range("G18").Select
ActiveSheet.Paste Link:=True
Rem CAMPO DE VALOR BRUTO
Workbooks(stArchivoElegido).Activate
Range("B18:D18").Select
Application.CutCopyMode = False
Selection.Copy
Windows("CONSOLIDADO11").Activate
Range("H18").Select
ActiveSheet.Paste Link:=True
Rem CAMPO DE VALOR DEDUCCIONES
Workbooks(stArchivoElegido).Activate
Range("M18:P18").Select
Application.CutCopyMode = False
Selection.Copy
Windows("CONSOLIDADO11").Activate
Range("I18").Select
ActiveSheet.Paste Link:=True
Rem CAMPO DE VALOR NETO
Workbooks(stArchivoElegido).Activate
Range("Y18").Select
Application.CutCopyMode = False
Selection.Copy
Windows("CONSOLIDADO11").Activate
Range("J18").Select
ActiveSheet.Paste Link:=True
Rem CAMPO PARA EL CODIGO DE LA DESCRIPCION------------
Workbooks(stArchivoElegido).Activate
Range("A41").Select
Application.CutCopyMode = False
Selection.Copy
Windows("CONSOLIDADO11").Activate
Range("N3").Select
ActiveSheet.Paste Link:=True
Rem CAMPO PARA EL VALOR DE LA DESCRIPCION------------
Workbooks(stArchivoElegido).Activate
Range("AN41").Select
Application.CutCopyMode = False
Selection.Copy
Windows("CONSOLIDADO11").Activate
Range("P3").Select
ActiveSheet.Paste Link:=True
a = Range("N3")
b = Range("P3")
If Range("K14").Value = a Then
Range("K18") = b
Else
If Range("L14").Value = a Then
Range("L18") = b
Else
If Range("M14").Value = a Then
Range("M18") = b
Else
If Range("N14").Value = a Then
Range("N18") = b
Else
If Range("O14").Value = a Then
Range("O18") = b
Else
If Range("P14").Value = a Then
Range("P18") = b
Else
If Range("Q14").Value = a Then
Range("Q18") = b
Else
If Range("R14").Value = a Then
Range("R18") = b
Else
If Range("S14").Value = a Then
Range("S18") = b
Else
If Range("T14").Value = a Then
Range("T18") = b
Else
If Range("U14").Value = a Then
Range("U18") = b
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
Rem CAMPO PARA EL CODIGO DE LA DESCRIPCION------------
Workbooks(stArchivoElegido).Activate
Range("A42").Select
Application.CutCopyMode = False
...
Sub DATOS()
Dim stArchivoElegido As Variant
Dim a As Variant
Dim b As Variant
Dim c As Variant
Dim d As Variant
Dim e As Variant
Dim f As Variant
Dim g As Variant
Dim h As Variant
Dim i As Variant
Dim j As Variant
Dim k As Variant
Dim l As Variant
stArchivoElegido = Application.GetOpenFilename("Hoja Excel , *.xls*", _
, "INGRESE SU ARCHIVO PARA EJECUTAR")
Workbooks.Open stArchivoElegido
stArchivoElegido = ActiveWorkbook.Name
ActiveWindow.ScrollRow = 1
ActiveWindow.WindowState = xlNormal
Rem CAMPO DE FECHA DE PAGO
Range("J15:K15").Select
Selection.Copy
Windows("CONSOLIDADO11").Activate
Range("B18").Select
ActiveSheet.Paste Link:=True
Rem CAMPO DE NOMBRE DE BENEFICIARIO
Workbooks(stArchivoElegido).Activate
Range("K26:U26").Select
Application.CutCopyMode = False
Selection.Copy
Windows("CONSOLIDADO11").Activate
Range("C18").Select
ActiveSheet.Paste Link:=True
Rem CAMPO DE NIT O CEDULA
Workbooks(stArchivoElegido).Activate
Range("B26:D26").Select
Application.CutCopyMode = False
Selection.Copy
Windows("CONSOLIDADO11").Activate
Range("D18").Select
ActiveSheet.Paste Link:=True
Rem CAMPO DE ESTADO DE PAGO
Workbooks(stArchivoElegido).Activate
Range("J16:K16").Select
Application.CutCopyMode = False
Selection.Copy
Windows("CONSOLIDADO11").Activate
Range("E18").Select
ActiveSheet.Paste Link:=True
Rem CAMPO DE Nº DE OBLIGACION
Workbooks(stArchivoElegido).Activate
Range("U16:V16").Select
Application.CutCopyMode = False
Selection.Copy
Windows("CONSOLIDADO11").Activate
Range("F18").Select
ActiveSheet.Paste Link:=True
Rem CAMPO DE Nº ORDEN DE PAGO
Workbooks(stArchivoElegido).Activate
Range("B15:D15").Select
Application.CutCopyMode = False
Selection.Copy
Windows("CONSOLIDADO11").Activate
Range("G18").Select
ActiveSheet.Paste Link:=True
Rem CAMPO DE VALOR BRUTO
Workbooks(stArchivoElegido).Activate
Range("B18:D18").Select
Application.CutCopyMode = False
Selection.Copy
Windows("CONSOLIDADO11").Activate
Range("H18").Select
ActiveSheet.Paste Link:=True
Rem CAMPO DE VALOR DEDUCCIONES
Workbooks(stArchivoElegido).Activate
Range("M18:P18").Select
Application.CutCopyMode = False
Selection.Copy
Windows("CONSOLIDADO11").Activate
Range("I18").Select
ActiveSheet.Paste Link:=True
Rem CAMPO DE VALOR NETO
Workbooks(stArchivoElegido).Activate
Range("Y18").Select
Application.CutCopyMode = False
Selection.Copy
Windows("CONSOLIDADO11").Activate
Range("J18").Select
ActiveSheet.Paste Link:=True
Rem CAMPO PARA EL CODIGO DE LA DESCRIPCION------------
Workbooks(stArchivoElegido).Activate
Range("A41").Select
Application.CutCopyMode = False
Selection.Copy
Windows("CONSOLIDADO11").Activate
Range("N3").Select
ActiveSheet.Paste Link:=True
Rem CAMPO PARA EL VALOR DE LA DESCRIPCION------------
Workbooks(stArchivoElegido).Activate
Range("AN41").Select
Application.CutCopyMode = False
Selection.Copy
Windows("CONSOLIDADO11").Activate
Range("P3").Select
ActiveSheet.Paste Link:=True
a = Range("N3")
b = Range("P3")
If Range("K14").Value = a Then
Range("K18") = b
Else
If Range("L14").Value = a Then
Range("L18") = b
Else
If Range("M14").Value = a Then
Range("M18") = b
Else
If Range("N14").Value = a Then
Range("N18") = b
Else
If Range("O14").Value = a Then
Range("O18") = b
Else
If Range("P14").Value = a Then
Range("P18") = b
Else
If Range("Q14").Value = a Then
Range("Q18") = b
Else
If Range("R14").Value = a Then
Range("R18") = b
Else
If Range("S14").Value = a Then
Range("S18") = b
Else
If Range("T14").Value = a Then
Range("T18") = b
Else
If Range("U14").Value = a Then
Range("U18") = b
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
Rem CAMPO PARA EL CODIGO DE LA DESCRIPCION------------
Workbooks(stArchivoElegido).Activate
Range("A42").Select
Application.CutCopyMode = False
...
1 respuesta
Respuesta de edwinhenao
1