Macro para contar y sumar valores

Esta pregunta es para el experto Luis Mondelo: Tengo las columna CP y CZ en la hoja1, necesito que en la primera me cuente las celdas no vacías y la segunda me haga una sumatoria de todos los valores que encuentre. Los dos resultados me los copie en la hoja2 del mismo libro.

1 Respuesta

Respuesta
1

Te adjunto la macro que hace lo que solicitas:

Sub ejemplo()
Range("cp65000").End(xlUp).Offset(1, 0).Value = "final" 
Range("cp1").Select
Do While ActiveCell.Value <> "final" 
If ActiveCell.Value = "" Then
contar1 = contar1 + 1
End If
ActiveCell.Offset(1, 0).Select
Loop
ActiveCell.ClearContents
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Range("cz65000").End(xlUp).Offset(1, 0).Value = "final" 
Range("cz1").Select
Do While ActiveCell.Value <> "final" 
If IsNumeric(ActiveCell) Then
contar2 = contar2 + ActiveCell.Value
End If
ActiveCell.Offset(1, 0).Select
Loop
ActiveCell.ClearContents
Sheets("hoja2").Select
Range("a1").Value = "Hay "& contar1 &" celdas en blanco en la columna CP" 
Range("a2").Value = "La suma de valores de la columna CZ es de "& contar2
End Sub

recuerda finalizar y puntuar

Hola Luis, muchas gracias por tu respuesta. La rutina que me cuenta las celdas que NO estan en blanco por alguna razón me las está contando todas. Adicionalmente quisiera saber si me puedes ayudar con algo mas, En la misma hoja1 hay una columna N donde hay una clasificación por niveles (del 1 al 7) hay forma de hacer la misma operación pero separar los resultados por cada uno de los niveles. Debería quedar asi:

Nivel 1 235 5823265

Nivel 2 325 6823515

etc. Agradezco tu respuesta

saludos

Si, en la primera parte de la macro hay un lapsus, está contando las vacías.

La línea: If ActiveCell.Value = "" Then

Tiene que ser así: If not isempty(activecell) then

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas