Está en la página 1de 2

Sub MACRO1()

On Error Resume Next

nombreHoja = InputBox("ESCRIBIR NOMBRE DEL FORMULARIO A REPLICAR", "HOJA DE


FORMULARIO", "FORMULARIO")

For x = 1 To Sheets.Count

If ActiveWorkbook.Sheets(x).Name = nombreHoja Then

ExisteHoja = True

IndiceHoja = x

End If

Next x

If ExisteHoja = True Then

NumeroDeCopias = InputBox("CANTIDAD DE REPLICAS", "NUMERO DE COPIAS",


WorksheetFunction.CountA(Range("B4:B5000")))

For y = 1 To NumeroDeCopias

Nombre = Val(nombreHoja) + y

Sheets(IndiceHoja).Select

Sheets(IndiceHoja).Copy After:=Sheets(Sheets.Count)

Sheets(Sheets.Count).Name = Nombre

Next y

Else

MsgBox "La hoja no existe"

End If

End Sub

Sub MACRO2()

Dim CeldaInicial As Integer

Dim intHojas As Integer

Dim i As Integer 'Guardamos el dato de la cantidad de hojas

intHojas = ActiveWorkbook.Sheets.Count 'Si hay menor de 4 hojas la macro no continúa.

If intHojas < 3 Then


MsgBox "Debe haber por lo menos 4 hojas en el libro", vbExclamation, "EXCELeINFO"

Else

'Recorremos cada formulario y cambiamos el nombre del formulario y llenamos las celdas
en cada formulario

'Para otro tipo de formulario u otro tipo de datos es solo cambiar los caracteres XX en
"ActiveWorkbook.Sheets(i).Range("XX")" para las celdas del formulario y

'cambiar los caracteres XX en "= Range("XX").Offset(CeldaInicial, 0).Value" para las celdas


de la base de datos

CeldaInicial = 0

For i = 3 To intHojas

On Error Resume Next

ActiveWorkbook.Sheets(i).Name = Range("B4").Offset(CeldaInicial, 0).Value

ActiveWorkbook.Sheets(i).Range("J3") = Range("M4").Offset(CeldaInicial, 0).Value

ActiveWorkbook.Sheets(i).Range("C3") = Range("B1").Value

ActiveWorkbook.Sheets(i).Range("C6") = Range("C4").Offset(CeldaInicial, 0).Value

ActiveWorkbook.Sheets(i).Range("C7") = Range("D4").Offset(CeldaInicial, 0).Value

ActiveWorkbook.Sheets(i).Range("C8") = Range("F4").Offset(CeldaInicial, 0).Value

ActiveWorkbook.Sheets(i).Range("C9") = Range("E4").Offset(CeldaInicial, 0).Value

ActiveWorkbook.Sheets(i).Range("C5") = Range("F4").Offset(CeldaInicial, 0).Value

ActiveWorkbook.Sheets(i).Range("I6") = Range("H4").Offset(CeldaInicial, 0).Value

ActiveWorkbook.Sheets(i).Range("I7") = Range("I4").Offset(CeldaInicial, 0).Value

ActiveWorkbook.Sheets(i).Range("I8") = Range("K4").Offset(CeldaInicial, 0).Value

ActiveWorkbook.Sheets(i).Range("I9") = Range("J4").Offset(CeldaInicial, 0).Value

CeldaInicial = CeldaInicial + 1

On Error GoTo 0

Next

End If

End Sub

También podría gustarte