Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado

WorksheetFunction.CountA

| 7 comentarios

La función WorksheetFunction.CountA cuenta el número de celdas que contengan datos o valores* que existen  en un rango o matriz. Es decir, la Funcion Count se utiliza cuando el usuario no necesite contar valores lógicos, texto o valores de error.

WorksheetFunction.CountA( Arg1,Arg2...)

* NOTA:

Nótese que un valor es todo tipo de información, incluidos texto vacío (“”) y valores de error. No se considera un valor a las celdas vacías.

Ejemplos:

  • Encontrar última celda

Dim lngUltimaCelda As Long

If WorksheetFunction.CountA(Cells) > 0 Then

 lngUltimaCelda = Cells.Find(What:="*", After:=[A1], _

 SearchOrder:=xlByRows, _

 SearchDirection:=xlPrevious).Row

 MsgBox lngUltimaCelda

End If

res

(Para mayor visualización de la imagen, hacer click en la misma)

  •           Contar el número de celdas que contienen datos

Sub ContarCeldas()

Dim n As Integer

     n = Application.WorksheetFunction.CountA(Selection)

     MsgBox n & " celdas que contienen datos"

End Sub

Resultados

(Para mayor visualización de la imagen, hacer click en la misma)

 

Otro ejemplo en excel:  WorksheetFunctionCOUNTA

 

Elaborado por: Alessandra Loconi

7 comentarios

  1. Es posible utilizar esta función de acuerdo a una condición? Por ejemplo,
    En un registro de datos con fechas de nacimiento, contar los que nacieron el año 1991.

    • En ese caso no seria mas conveniente usar el CONTAR.SI???
      Para mas de una condición esta el CONTAR.SI.CONJUNTO...

  2. Buenas noches,

    Mi duda es, Por que al ejecutar esta linea el VBA me lanza un aviso de que no puede llamar a la función Match?? Se refiere a un formulario en el cual ingresando un valor numerico en el textbox1 devuelva el resultado del Match en el Textbox3

    Me.TextBox3.Text = Application.WorksheetFunction.Match(Me.TextBox1.Text, Hoja2.Range("C:C"), 0)

    Agradeceria cualquier ayuda!

  3. Quiero que por medio de un vba cuente una fila y si el resultado es solo uno que se detenga. Saludos

  4. Me gustarìa saber si puedo , usar una macro que haga la funciòn de contar.si.conjunto en una bd , que cuente las filas con multiples condiciones , que refleje el resultado de los datos en otra hoja , donde se pueda mostrar graficos .

  5. macro en mensaje de vba
    al comparar el valor de celda a1 hoja1 con
    rango de celdas a1:a100 de hoja2

  6. Dos funciones fundamentales excelentemente explicadas. Gracias

Deja una respuesta

Los campos requeridos estan marcados con *.