Saltar al contenido

Macro insertar filas en blanco y sumar por bloques


Recommended Posts

publicado

Buenas tardes a todos!

Que tal, en espera de su ayuda tengo el siguiente problema, ya tengo una macro que me hace un reporte por cada sucursal que se tiene en el pais, pero no logro separarlo por bloques y me inserte dos filas en blanco arriba despues de que encuentre un dato. y donde inserto la segunda linea me ponga el nombre ahi, y en toda esa fila me realize la sumatoria de los campos. Creo que con el ejemplo quedara mas claro en la hoja1 es como tengo mi dato, y en la hoja2 como deseo que quede, espero me puedan apoyar ya que es el ultimo dato que me hace falta para terminar.

Este codigo es correcto me inserta las 2 filas en blanco que necesito, ya logre que funcionara!!!

Sub OrdenarVendedor()

Dim lngRow As Long, intRow As Long

Application.ScreenUpdating = False

Range("A1").Select

Range("A1").CurrentRegion.Sort _

Key1:=Range("A2"), Order1:=xlAscending, Header:=xlYes

lngRow = Cells(Rows.Count, 1).End(xlUp).Row

For intRow = lngRow To 2 Step -1

If Cells(intRow, 1).Value <> Cells(intRow - 1, 1).Value Then _

Rows(intRow).Resize(2).Insert

Next intRow

Application.ScreenUpdating = True

End Sub

EJEMPLO1.rar

publicado

Hola, perdonen mi insitencia, pero estoy desesperado, tengo 2 meses tratando de hechar a andar esta macro y nada que resulta, poco a poco eh ido mejorado el codigo pero solamente me hace falta esa parte, si alguien sabe como se puede hacer se los agradesco mucho.

Saludos cordiales

Gerardo Arevalo.

publicado

Lo unico que me hace falta es que me sume por bloques, es decir lo datos que estan dentro de las filas en blanco.. En mi ejmplo viene la forma en la que requiero hacer la suma, y tambien en cuanto encuentre un dato en la columna B subir una celda arriba este dato.

publicado

Una idea para lo que necesitas, asumiendo filas vacias entre grupos:

For Each aArea In ActiveSheet.UsedRange.SpecialCells(xlCellTypeConstants).Areas
Cells(aArea.Row + aArea.Rows.Count, 3).Value = WorksheetFunction.Sum(Range(Cells(aArea.Row, 3), Cells(aArea.Row + aArea.Rows.Count - 1, 3)))
Next aArea[/CODE]

Tu ejemplo continene celdas combinadas y bordes individuales, ambas cosas deben corregirse/eliminarse para facilitar la operacion

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.