For each en VBA excel URGENTE

hola aprendemos saludos y bendiciones quería saber si me puedes ayudar

esq en unas celdas de excel puse M de masculinos y en otras F de femenino como puedo hacer que al crear una función en excel utilizando el siclo for each que me cuente cuando M y F hay en ese grupo de celdas en donde las puse

esto solo me cuenta las m:

public function contar_M(letras as range)

Dim contar as integer

Dim valores an range

for each valores in letras

if valores.value ="M" then

contar=contar+1

end if

next

contar_M=contar

end function

como puedo hacer que me cuente las F pero en la misma función

espero que me puedas ayudar gracias

1 respuesta

Respuesta
1

Si quieres que te cuente las F en lugar de las M, esta sería la macro

public function contar_M(letras as range)
Dim contar as integer
Dim valores an range
for each valores in letras
if valores.value ="F" then
contar=contar+1
end if
next
contar_M=contar
end function

Ahora, si quieres qeu te cuente las F y las M en la misma función, la macro es:

public function contar_M(letras as range)
Dim contar as integer
Dim valores an range
for each valores in letras
if valores.value ="F" or valores.value ="M" then
contar=contar+1
end if
next
contar_M=contar
end function

Saludos. Dam
Si es lo que necesitas.

gracias pero como puedo hacer para que en esa función me saque asi separado q hay digamos 8 M y 7 F se puede xq lo que me pusiste me cuenta el total de las F Y M juntas y yo las quiero separadas??

Utiliza esta

Public Function contar_M(letras As Range)
'Dim contarm, contarf As Integer
Dim valores As Range
For Each valores In letras
Select Case valores
Case "M", "m"
contarm = contarm + 1
Case "F", "f"
contarf = contarf + 1
End Select
Next
contar_M = contarm & " M y " & contarf & " F"
End Function

Saludos. Dam

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas