Buenas a todos. Un saludo especial a Héctor a quien me dirijo para
solicitarte que por favor me ayudes en mi entrampamiento, ya que estoy
probando distintas variables para descifrar la siguiente sintaxis,
pero lastimosamente no logro el objetivo.
Tengo en un Excel 2007 con dos hojas protegidas y sólo algunas celdas
habilitadas que realizan esta operación: una es “Formulario” que es el
origen y la otra “tabla_detalle” que es el destino: En formulario
quiero copiar ó transponer automáticamente el rango “C4:C15” (C13 y
C14 tiene formato “dd/mm/yyyy” y “dd/mm/yyyy hh:mm” respectivamente),
con el mensaje de confirmación "¿Desea guardar los cambios?" (y luego
del mensaje de confirmación borrarlos), a la otra hoja
“tabla_detalle” B2:M2, siendo B1, C1, D1, autonuméricos, a modo que
cada vez que se registre un expediente en el formulario este se
traslade automáticamente a la otra hoja.
Sub Rectánguloredondeado_Haga_clic_en()
Dim Consultas As Byte
Consultas = Application.CountA(Range("c4"))
If Consultas = 0 Then Exit Sub
If MsgBox("¿Desea guardar los cambios?", vbYesNo, "Confirmación") vbNo _
Then Exit Sub
With Worksheets("tabla_detalle").Range("a65536").End(xlUp).Offset(1,
5)
.Resize(Consultas, 2).Value = Range("c4").Resize(Consultas).Value
.Offset(, -4).Resize(Consultas, 4).Value = Array( _
Range("C4").Value, Range("C5").Value, Range("C6").Value,
Range("C7").Value)
With .Offset(, -5).Resize(Consultas)
.Value = Application.Max(.Parent.Range("a:a")) + 1
End With
End With
Range("c4:c15").Resize(Consultas).ClearContents
End Sub
Gracias,
Carlos
Leer las respuestas