Macro Sumar SI
Transcript of Macro Sumar SI
-
7/21/2019 Macro Sumar SI
1/1
Hola, necesito sumar valores de dos columnas que correspondan a un mismo valor de otra columna, lo que
quiero decir lo muestro por medio del siguiente ejemplo:
Tengo una serie de datos mas o menos asi:
A____B____C
1____4____5
3____6____73____2____6
4____1____1
7____3____2
9____3____5
9____2____4
Lo que necesito es que la macro me relacione los valores iguales de la columna A, y luego me suma los
valores correspondientes de la columna B y C, quedando el proceso asi (en este caso las celdas iguales de la
columna A son los valores de "3" y "9"):
A____B____C
1____4____5
3____8____134____1____1
7____3____2
9____5____9
En otras palabras que no me queden valores repetidos en la columna A.
Les agradezco mucho la ayuda que me pudieran brindar.
Sub sumarsi()
Application.ScreenUpdating = False
Dim uf As Long, uf2 As Long
Dim rangocriterio As Range
Dim rangosuma1 As RangeDim rangosuma2 As Range
uf = Range("A" & Rows.Count).End(xlUp).Row
Range("A1:A" & uf).AdvancedFilter 2, CriteriaRange, Range("E1"), Unique:=True
Set rangocriterio = Range("A2:A" & uf)
Set rangosuma1 = Range("B2:B" & uf)
Set rangosuma2 = Range("C2:C" & uf)
Range("F1") = Range("B1"): Range("G1") = Range("C1")
uf2 = Range("E" & Rows.Count).End(xlUp).Row
With Range("F2:F" & uf2)
.Formula = "=SUMIF(" & rangocriterio.Address & ", $E2 ," & rangosuma1.Address & ")"
.Formula = .Value
End With
With Range("G2:G" & uf2)
.Formula = "=SUMIF(" & rangocriterio.Address & ", $E2 ," & rangosuma2.Address & ")"
.Formula = .Value
End With
Set rangocriterio = Nothing
Set rangosuma1 = Nothing
Set rangosuma2 = Nothing
Application.ScreenUpdating = True
End Sub