Error en aplicación "count if"
Hola a todos,
Estoy modificando una macro, la cual me funciona si especifico el rango a buscar como "col(1)", pero no si lo especifico como "Range("A3", Range("A3").End(xlDown))".
El tema es el siguiente. Tengo una hoja ("general") en la que inserto un número de nuevo cliente. Al aceptar y ejecutar la macro, quiero que se añada este nuevo cliente al listado (en la hoja "listado clientes"), pero antes quiero que compruebe si ya existe en el listado de dicha hoja, en el rango de celdas que va desde la A3 hasta la última fila con datos.
No quiero poner el rango como la columna entera, porque entonces tendría que tener cuidado con lo que pongo en la casilla superior al listado (a1), ya que la tendría en cuenta, además de con la fila de totales, si es que la incluyo.
Os copio la macro y os digo dónde me da error:
<p class="scayt-misspell" data-scayt_word="strValor2" data-scaytid="52">' primero busca si el nº de cliente ya existecontarsi = Application.WorksheetFunction.CountIf(Sheets("listado clientes").Range("a3", Range("a3").End(xlDown)), Sheets("general").Range("c3"))
If contarsi = 0 Then
msgbox "hola"
Me da el error en la fila contarsi.
En cambio , si pongo lo siguiente, me funciona, pero corro el riesgo con la casilla superior y con la fila de totales:
' primero busca si el nº de cerda ya existe
Dim filaIni As Long
contarsi = Application.WorksheetFunction.CountIf(Sheets("listado clientes").Columns(1), Sheets("general").Range("c3"))
If contarsi = 0 Then
msgbox "hola"
Seguro que es una tontería pero no caigo.
Muchísimas gracias de antemano.