VBA-Macros ¿Como copiar datos de una hoja a otras (Con comando)?
Junto con saludar les comento que tengo la siguiente macros ( Mostrada al final de la pregunta) y quiero que esos mismos datos ingresados, se copien en 3 hojas más (Aparte de la ya señalada "GGEC-R-001 E200"). Saludos Cordiales.
Sub INGRESAR()
'hoja destino
Set hod = Sheets("GGEC-R-001 E200")
'hoja con el formulario
Sheets("Ingreso Nuevo Contrato").Select
sino = MsgBox("¿Confirmas guardar este registro?", vbQuestion + vbYesNo, "CONFIRMAR")
If sino <> vbYes Then MsgBox "Proceso cancelado.": Exit Sub
'se guarda la última fila ocupada en hoja destino
x = hod.Range("A" & Rows.Count).End(xlUp).Row + 1
Set busco = hod.Range("D:D").Find([D8], LookIn:=xlValues, lookat:=xlWhole)
'si no encuentra el registro se agrega al final
If busco Is Nothing Then
'se agrega fila al final
hod.Range("A" & x).EntireRow.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Else
y = busco.Row + 1
While hod.Range("D" & y) = [D8]
y = y + 1
Wend
'aquí debe ser insertada la fila
hod.Range("A" & y).EntireRow.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
x = y 'para utilizar la misma variable en instrucciones de pase
End If
hod.Range("A" & x) = [D5]
hod.Range("B" & x) = [D6]
hod.Range("C" & x) = [D7]
hod.Range("D" & x) = [D8]
hod.Range("E" & x) = [D9]
hod.Range("F" & x) = [D10]
hod.Range("G" & x) = [D11]
hod.Range("H" & x) = [D12]
'opcional: borrar el formulario para un nuevo pase o enviar un mensaje
'[D5:D12].ClearContents
[D5].Select
MsgBox "Datos guardados."
End Sub