Dividir los datos en una hoja por número específico de filas utilizando VBA en Microsoft Excel
En este artículo, crearemos una macro para dividir los datos por un número específico de filas.
Tenemos datos brutos en la hoja “RawData”. Queremos dividir estos datos en varias hojas.
Antes de ejecutar la macro, debemos especificar el número de filas necesarias en cada hoja.
Explicación del código
CntRows = Cint (Hojas («Principal»). TextBox1.Value)
El código anterior se utiliza para obtener el recuento de la cantidad de hojas necesarias en una hoja.
LastRow = .Range («A» & .Rows.Count) .End (xlUp) .Row El código anterior se usa para obtener el número de fila de la última celda.
Sheets.Add after: = Sheets (Sheets.Count)
El código anterior se utiliza para agregar una nueva hoja después de la última hoja.
El código anterior se usa para copiar el número especificado de filas a una nueva hoja de trabajo.
Siga el código a continuación
Option Explicit Sub SplitDataToMultipleSheets() 'Declaring variables Dim LastRow As Long, n As Long, CntRows As Long Dim LastColumn As Integer 'Getting count of number of rows required in one sheet CntRows = CInt(Sheets("Main").TextBox1.Value) 'Disabling screen updates Application.ScreenUpdating = False With Sheets("RawData") 'Getting row number and column number of last cell LastRow = .Range("A" & .Rows.Count).End(xlUp).Row LastColumn = .Range("A1").SpecialCells(xlCellTypeLastCell).Column 'Looping through data in the sheet For n = 1 To LastRow Step CntRows 'Adding new worksheet Sheets.Add after:=Sheets(Sheets.Count) 'Copying data to new worksheet .Range("A" & n).Resize(CntRows, LastColumn).Copy Range("A1") Next n .Activate End With 'Enabling screen updates Application.ScreenUpdating = True End Sub
Si te gustó este blog, compártelo con tus amigos en Facebook y Facebook.
Nos encantaría saber de usted, háganos saber cómo podemos mejorar nuestro trabajo y hacerlo mejor para usted. Escríbanos a [email protected]