Necesito sumar 3 columnas más en una fórmula, más que no se en donde meterla, se los agradecería

Este es el siguiente código donde tengo que poner la otras 3 columnas... (Soy nueva con las Macros)

Sub contar()

' Quitar ceros
Columns("A:B").Select
Selection.Sort Key1:=Range("B1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
While Cells(1, 2) = 0
Rows("1:1").Select
Selection.Delete Shift:=xlUp
Wend

' Filtrado de datos
Rows("1:1").Select
Selection.Insert Shift:=xlDown
Range("A1").Select
ActiveCell.FormulaR1C1 = "PN"
Range("B1").Select
ActiveCell.FormulaR1C1 = "QTY"
Range("F1").Select
Columns("A:A").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("F1" _
), Unique:=True

' Conteo de datos
Dim numerodedatos As Integer
Range("H1").Select
ActiveCell.FormulaR1C1 = "=DCOUNT(C[-2],1,R[1]C:R[2]C)"
numerodedatos = Range("h1").Value

' Suma de datos
Range("H1").Select
ActiveCell.FormulaR1C1 = "=DSUM(C[-7]:C[-6],2,R[1]C:R[2]C)"
Range("H2").Select
ActiveCell.FormulaR1C1 = "PN"
Range("H3").Select
Dim contador As Integer
For contador = 2 To numerodedatos + 1
Cells(3, 8) = Cells(contador, 6)
Cells(contador, 7) = Cells(1, 8)
Next contador
' Formato

Columns("A:E").Select
Selection.Delete Shift:=xlToLeft
Columns("C:D").Select
Selection.Delete Shift:=xlToLeft
Range("B1").Select
ActiveCell.FormulaR1C1 = "Cantidad"
Range("A1:B1").Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Selection.Font.Bold = True
Range("C1").Select
Columns("A:A").EntireColumn.AutoFit
Columns("B:B").Select
With Selection
.HorizontalAlignment = xlGeneral
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With

' Sorteo
Columns("A:B").Select
Selection.Sort Key1:=Range("A1"), Order1:=xlAscending, Key2:=Range("B1") _
, Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:= _
False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal, DataOption2 _
:=xlSortNormal
ActiveCell.SpecialCells(xlLastCell).Select
ActiveWorkbook.Save

End Sub

1 Respuesta

Respuesta
1

O sea que tu base de datos abarca la columna (A:E) Si es así entonces cambia en tu código

Lo siguiente

Range("H1").Select
ActiveCell.FormulaR1C1 = "=DSUM(C[-7]:C[-3],2,R[1]C:R[2]C)"
Range("H2").Select

ya que lo que hace es seleccionar H1 regresas 7 columnas y llegas a la columna "A" y de ahi regresas otras 6 llegas  a la columna B y si en lugar de -6 le ponemos -3 llegas a la columna "E"

Hola disculpa, sabes que aun me sigue contando nomas la columna B y no me agarra las columnas C a la E, como le podría hacer...

¿Cambiaste el numero de-6 por -3? Si gustas enviame tu archivo de favor a [email protected]

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas