Saltar al contenido

Filas con formula


Recommended Posts

publicado

Hola tengo un pequeño problema, estoy trabajando un libro y preciso poder insertar filas y que vengan con el formato y formula de la fila anterior. ahora bien tengo este macro

Sub insertarfilayformula()
'
' insertarfilayformula Macro
'
' Acceso directo: CTRL+m
'
ActiveCell.Rows("1:1").EntireRow.Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
ActiveCell.Offset(-1, 6).Range("A1").Select
Selection.AutoFill Destination:=ActiveCell.Range("A1:A2"), Type:= _
xlFillDefault
ActiveCell.Range("A1:A2").Select
End Sub[/CODE]

pero deseo combinarlo con este otro que encontre en el foro para que me de la opcion de agregar todas las filas que necesito de una sola vez, osea agregar el inputbox pero que al igual que en el macro anterior me copie la formula del anterior

[CODE]Dim a As Integer
a = 0
a = InputBox("Cuantas filas quieres insertar? ")
While a > 0
ActiveCell.Offset(1, 0).Range("a1").Select
Selection.EntireRow.Insert
a = a - 1
Wend
ActiveCell.Offset(-1).Select
End Sub
[/CODE]

gracias!

publicado

Hola adevares

A ver si te sirve este:

Sub InsertCol()

Nºfil = InputBox("Cuantas filas quieres insertar?", "Inf.")

Filsel = InputBox("Cual es la fila seleccionada?", "Inf.")

Cells(Filsel, 1).Resize(Nºfil).EntireRow.Insert CopyOrigin:=xlFormatFromLeftOrAbove

End Sub

publicado

Hola Ama:

este macro me permite agrgar las columnas pero no me da trae la formula a fin de cuentas viene en blanco y seria igual a agrgar una fila con el comando insertar.

publicado

Hola adevares

Lo de la formula se me pasó por alto ,a ver asi que tal.

Sub InsertCol()
Application.ScreenUpdating = False
Nºfil = InputBox("Cuantas filas quieres insertar?", "Inf.")
NºCol = InputBox("Cual es la columna a copiar?", "Inf.")
Filsel = InputBox("Cual es la fila seleccionada?", "Inf.")

Cells(Filsel, 1).Resize(Nºfil).EntireRow.Insert CopyOrigin:=xlFormatFromLeftOrAbove
Cells(Filsel - 1, 5).Copy
For i = Filsel To Filsel + (Nºfil - 1)
Cells(i, NºCol).PasteSpecial
Next
Application.CutCopyMode = False
End Sub[/CODE]

publicado

Hola: a todos:

Esta podría ser otra vía:

Sub InsertarFilasDelante()

filas = InputBox("Nº de filas a incluir", , 1)


For x = 1 To filas
Rows(ActiveCell.Row).Insert
Rows(ActiveCell.Row + 1).Copy Rows(ActiveCell.Row)
Set rango = Range("A" & ActiveCell.Row & ":" & _
Range(Cells(ActiveCell.Row, Columns.Count), _
Cells(ActiveCell.Row, Columns.Count)).End(xlToLeft).Address)


For Each celda In rango
If celda.HasFormula = False Then celda.Value = ""
Next
Next


End Sub


[/CODE]

Saludos

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.