Insertar "n" Filas en base de Datos

14/05/2009 - 21:27 por HMS | Informe spam
Hola a tod@s.
En ocasiones anteriores he recibido muchos aportes sobre el tema de
"insertar filas" en una base de Datos.
De hecho adjunto una macro que KL, muy amablemente aportó al grupo y
que funciona muy bien !, y la cual pondré al final de este correo,
para las personas que la necesiten.
Sin embargo, existe alguna forma "manual", con fórmulas o macro, en la
que se le pueda indicar a EXCEL, dos parámetros, diferentes para hacer
el proceso de Insertar Filas.
PARAMETROS
1. A partir de que Fila, se necesita que EXCEL empiece hacer insertos
de FILAS.
2. Cuántas Filas en BLANCO se necesita Insertar.
Por ejemplo si se tiene una base de datos con 100 datos, y 10
Columnas.
Qusiera que de "fila de por medio", EXCEL, inserte 5 "Filas en
Blanco".
De antemano Gracias
HMS


MACRO Insertar Filas en base de Datos
Con esta macro, se define a partir de qué FILA, uno necesita que EXCEL
haga "inserciones", de filas en blanco a la base de datos.
La macro es la siguiente:

Sub test()
Dim UFila As Long, PFila As Long
With ActiveSheet
UFila = .Cells(.Rows.Count, 1).End(xlUp).Row
PFila = Application.InputBox( _
"Introduce el numero de la fila inicial")
If PFila > UFila Or PFila = 0 Then Exit Sub
With Application
.ScreenUpdating = False
.EnableEvents = False
.Calculation = xlCalculationManual
End With
For i = UFila To PFila Step -6
.Rows(i + 1).Insert
Next i
With Application
.ScreenUpdating = True
.EnableEvents = True
.Calculation = xlCalculationAutomatic
End With
End With
End Sub

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
15/05/2009 - 05:35 | Informe spam
hola, tocayo !

en la macro que expones existe un "parametro" que no has comentado y podria ser importante
la insercion de filas hace un "Step -6", asi que... hay algun "secreto o detalle" al respecto ?

saludos,
hector.

__ OP __
En ocasiones anteriores he recibido muchos aportes sobre el tema de "insertar filas" en una base de Datos.
De hecho adjunto una macro que KL, muy amablemente aporto al grupo y que funciona muy bien !
y la cual pondre al final de este correo, para las personas que la necesiten.
Sin embargo, existe alguna forma "manual", con formulas o macro, en la que se le pueda indicar a EXCEL
dos parametros diferentes para hacer el proceso de Insertar Filas.
PARAMETROS
1. A partir de que Fila, se necesita que EXCEL empiece hacer insertos de FILAS.
2. Cuántas Filas en BLANCO se necesita Insertar.
Por ejemplo si se tiene una base de datos con 100 datos, y 10 Columnas.
Qusiera que de "fila de por medio", EXCEL, inserte 5 "Filas en Blanco".
De antemano Gracias
HMS

MACRO Insertar Filas en base de Datos
Con esta macro, se define a partir de que FILA, uno necesita que EXCEL haga "inserciones", de filas en blanco a la base de datos.
La macro es la siguiente:

Sub test()
Dim UFila As Long, PFila As Long
With ActiveSheet
UFila = .Cells(.Rows.Count, 1).End(xlUp).Row
PFila = Application.InputBox( _
"Introduce el numero de la fila inicial")
If PFila > UFila Or PFila = 0 Then Exit Sub
With Application
.ScreenUpdating = False
.EnableEvents = False
.Calculation = xlCalculationManual
End With
For i = UFila To PFila Step -6
.Rows(i + 1).Insert
Next i
With Application
.ScreenUpdating = True
.EnableEvents = True
.Calculation = xlCalculationAutomatic
End With
End With
End Sub
Respuesta Responder a este mensaje
#2 Corando.
15/05/2009 - 12:34 | Informe spam
Solo copia el macro tiene algunas modificaciones,
como comenta Hector Miguel, le he borrado algunos pasos.

Sub test()
Dim UFila As Long, PFila As Long
With ActiveSheet
UFila = .Cells(.Rows.Count, 1).End(xlUp).Row
Nf = Application.InputBox( _
"Insertar Filas despues de la fila No.")
PFila = Application.InputBox( _
"Introduce Cantidad de filas a Incrementar")
With Application
.ScreenUpdating = False
.EnableEvents = False
.Calculation = xlCalculationManual
End With
For i = UFila To PFila
.Rows(i + Nf).Insert
Next i
With Application
.ScreenUpdating = True
.EnableEvents = True
.Calculation = xlCalculationAutomatic
End With
End With
End Sub


Espero te sirva.
Respuesta Responder a este mensaje
#3 HMS
15/05/2009 - 16:59 | Informe spam
On 14 mayo, 21:35, "Héctor Miguel"
wrote:
hola, tocayo !

en la macro que expones existe un "parametro" que no has comentado y podria ser importante
la insercion de filas hace un "Step -6", asi que... hay algun "secreto o detalle" al respecto ?

saludos,
hector.

__ OP __
En ocasiones anteriores he recibido muchos aportes sobre el tema de "insertar filas" en una base de Datos.
De hecho adjunto una macro que KL, muy amablemente aporto al grupo y que funciona muy bien !
y la cual pondre al final de este correo, para las personas que la necesiten.
Sin embargo, existe alguna forma "manual", con formulas o macro, en la que se le pueda indicar a EXCEL
dos parametros diferentes para hacer el proceso de Insertar Filas.
PARAMETROS
1. A partir de que Fila, se necesita que EXCEL empiece hacer insertos de FILAS.
2. Cuántas Filas en BLANCO se necesita Insertar.
Por ejemplo si se tiene una base de datos con 100 datos, y 10 Columnas.
Qusiera que de "fila de por medio", EXCEL, inserte 5 "Filas en Blanco".
De antemano Gracias
HMS

MACRO Insertar Filas en base de Datos
Con esta macro, se define a partir de que FILA, uno necesita que EXCEL haga "inserciones", de filas en blanco a la base de datos.
La macro es la siguiente:

Sub test()
    Dim UFila As Long, PFila As Long
    With ActiveSheet
        UFila = .Cells(.Rows.Count, 1).End(xlUp).Row
        PFila = Application.InputBox( _
            "Introduce el numero de la fila inicial")
        If PFila > UFila Or PFila = 0 Then Exit Sub
        With Application
            .ScreenUpdating = False
            .EnableEvents = False
            .Calculation = xlCalculationManual
        End With
        For i = UFila To PFila Step -6
            .Rows(i + 1).Insert
        Next i
        With Application
            .ScreenUpdating = True
            .EnableEvents = True
            .Calculation = xlCalculationAutomatic
        End With
    End With
End Sub




Hola Tocayo !!
Gusto Saludarte
En realidad el parámetro "Step -6", es el resultado de unas pruebas
que yo estaba haciendo con la macro.
Al incluirlo, EXCEL lo que hace en este caso específico es: "Incluye
una Fila en Blanco, Cada 6 Líneas"

Lo que yo necesito es indicarle a EXCEL, que en una Base de base de
datos, a partir del Número de fila que yo le indique, pueda incluir
las "N", lineas en Blanco.
Por ejemplo si tengo una BD, con 3 filas de datos que van de (A1:G3).
Y le indico a EXCEL que partir de la Linea 1, yo necesito que incluya
3 Filas en Blanco.
En buena teoría lo que EXCEL, debería de hacer es lo siguiente.
Dejar la primer Fila sin mover, o sea el primer dato de la BD, se
mantiene.
Luego de la Fila 2 a la Fila 4, debe de Incluir 3 FILAS en BLANCO.
En la Fila 5 aparecerá, el dato que antes estaba en A2
Luego de la Fila 6 a la Fila 8, deberán de aparecer 3 FILAS en BLANCO
Y finalmente en la FILA 9, debe de aparecer el Dato que originalmente
estaba como de tercero en la BD.
De antemano les agradezco todas la colaboraciones
HMS
Respuesta Responder a este mensaje
#4 Héctor Miguel
16/05/2009 - 03:11 | Informe spam
hola, tocayo !

prueba con una macro +/- como la siguiente:

Sub Insertar_nFilas_Col_A()
Dim Fila As Integer, pFila As Integer, nFilas As Byte, uFila As Integer
pFila = Val(Trim(InputBox("Indica la primer fila que se queda FIJA", "")))
If pFila < 1 Then Exit Sub
nFilas = Val(Trim(InputBox("Indica el numero de filas a insertar", "")))
If nFilas < 1 Then Exit Sub
uFila = [a65536].End(xlUp).Row
If nFilas = 1 Then GoTo Simple
Application.ScreenUpdating = False
For Fila = uFila To pFila + 1 Step -1
Range("a" & Fila).Resize(nFilas).EntireRow.Insert
Next
Exit Sub
Simple:
Dim Rango As String
For Fila = pFila + 1 To uFila
Rango = Rango & "," & "a" & Fila
Next
Range(Mid(Rango, 2)).EntireRow.Insert
End Sub

saludos,
hector.

__ OP __
Lo que yo necesito es indicarle a EXCEL, que en una Base de base de datos
a partir del Numero de fila que yo le indique, pueda incluir las "N", lineas en Blanco.
Por ejemplo si tengo... 3 filas de datos... (A1:G3) y le indico a EXCEL que partir de la Linea 1... incluya 3 Filas en Blanco.
En buena teoria lo que EXCEL, debería de hacer es lo siguiente.
Dejar la primer Fila sin mover, o sea el primer dato de la BD, se mantiene.
Luego de la Fila 2 a la Fila 4, debe de Incluir 3 FILAS en BLANCO.
En la Fila 5 aparecera, el dato que antes estaba en A2
Luego de la Fila 6 a la Fila 8, deberán de aparecer 3 FILAS en BLANCO
Y finalmente en la FILA 9, debe de aparecer el Dato que originalmente estaba como de tercero en la BD.
Respuesta Responder a este mensaje
#5 HMS
16/05/2009 - 19:54 | Informe spam
On 15 mayo, 19:11, "Héctor Miguel"
wrote:
hola, tocayo !

prueba con una macro +/- como la siguiente:

Sub Insertar_nFilas_Col_A()
  Dim Fila As Integer, pFila As Integer, nFilas As Byte, uFila As Integer
  pFila = Val(Trim(InputBox("Indica la primer fila que se queda FIJA", "")))
  If pFila < 1 Then Exit Sub
  nFilas = Val(Trim(InputBox("Indica el numero de filas a insertar", "")))
  If nFilas < 1 Then Exit Sub
  uFila = [a65536].End(xlUp).Row
  If nFilas = 1 Then GoTo Simple
  Application.ScreenUpdating = False
  For Fila = uFila To pFila + 1 Step -1
    Range("a" & Fila).Resize(nFilas).EntireRow.Insert
  Next
  Exit Sub
Simple:
  Dim Rango As String
  For Fila = pFila + 1 To uFila
    Rango = Rango & "," & "a" & Fila
  Next
  Range(Mid(Rango, 2)).EntireRow.Insert
End Sub

saludos,
hector.

__ OP __



> Lo que yo necesito es indicarle a EXCEL, que en una Base de base de datos
> a partir del Numero de fila que yo le indique, pueda incluir las "N", lineas en Blanco.
> Por ejemplo si tengo... 3 filas de datos... (A1:G3) y le indico a EXCEL que partir de la Linea 1... incluya 3 Filas en Blanco.
> En buena teoria lo que EXCEL, debería de hacer es lo siguiente.
> Dejar la primer Fila sin mover, o sea el primer dato de la BD, se mantiene.
> Luego de la Fila 2 a la Fila 4, debe de Incluir 3 FILAS en BLANCO.
> En la Fila 5 aparecera, el dato que antes estaba en A2
> Luego de la Fila 6 a la Fila 8, deberán de aparecer 3 FILAS en BLANCO
> Y finalmente en la FILA 9, debe de aparecer el Dato que originalmente estaba como de tercero en la BD.- Ocultar texto de la cita -

- Mostrar texto de la cita -



Funciona a la Perfección
Muchas gracias Tocayo
Slds
HMS
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida