Red de conocimiento informático - Aprendizaje de programación - Excel VBA, si la columna A es la misma, sume los datos de la columna b.

Excel VBA, si la columna A es la misma, sume los datos de la columna b.

Referencia:

Sub SumCalculation()

Atenuar la primera fila mientras dure, la última fila mientras

Atenuar MyCpt mientras

Atenuar F como rango

Atenuar I mientras

Atenuar MyFormula como cadena

Application.ScreenUpdating = False

Primera fila = 2

Última fila = Celdas(Filas.Count, "A").End(xlUp).Fila

Rango(Celdas(Primera fila, "B"), Celdas(Última fila, " B")).ClearContents

For I = Primera fila a última fila

Si (Celdas(I, "A") lt; gt; "") Entonces

MiFórmula = "CONTAR.SI(A" & PrimeraFila & ":A" & I & ",A" & I & ")"

MiCpt = Evaluar(MiFórmula)

Si ( MyCpt = 1) Entonces

MiFórmula = "SUMPRODUCT((A" amp; FirstRow amp; ":A" amp; LastRow amp; "=A" amp; I amp; " )*(C" & Primera fila & ":C" & Última fila & "))"

Celdas(I, "B") = Evaluar(MiFórmula)

Fin si

Fin Si

Siguiente I

Application.ScreenUpdating = True

Fin Sub