Insertar

Buenos Días: Voy directamente a la pregunta, tengo un libro en excel en el que periódicamente quiero insertar filas con una macro, en dicha inserción quiero p.ejemplo que las celdas a12 a la g12 me las inserte y me respete el formato pero sin copiar los datos anteriores y por otra parte que de la celda h12 a la l12 me copie las fórmulas que tengo en las lineas anteriores, también una botón para eliminar las filas que yo decida.
Un saludo.

1 Respuesta

Respuesta
1
Para ti también.
Te voy intentar dar un ejemplo, interpretando como mejor sepa tus instrucciones.
Sub Macro1()
Dim pregunta
Dim rango
Range("A12:G12").Select
Selection.Insert Shift:=xlDown
Range("H11:L11").Select
Selection.Copy
Range("H12").Select
ActiveSheet.Paste
pregunta = InputBox("Inserte el número de la fila que desea eliminar")
rango = pregunta & ":" & pregunta
Rows(rango).Select
Selection.Delete Shift:=xlUp
Range("a1").Select
End Sub
No he entendido la segunda instrucción bien: creo que quieres decir que copie las celdas que tiene en la línea superior y las pegue en H12:L12. Si no es así, dímelo.
Espero haberte ayudado.
Un saludo,
Efectivamente quiero que las celdas h12:l12 que contienen fórmulas me las pegue respetando las fórmulas, la instrucción me facilitas la he probado, pero el formato no me lo respeta.
Un saludo.
Lo que necesitas es una pequeña modificación para que haga un pegado especial de este modo:
Sub Macro1()
Dim pregunta
Dim rango
Range("A12:G12").Select
Selection.Insert Shift:=xlDown
Range("H11:L11").Select
Selection.Copy
Range("H12").Select
' Aquí está la modificación
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
pregunta = InputBox("Inserte el número de la fila que desea eliminar")
rango = pregunta & ":" & pregunta
Rows(rango).Select
Selection.Delete Shift:=xlUp
Range("a1").Select
End Sub
Espero que te sirva.
Un saludo,

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas