Notifications
Clear all

Essa fórmula em VBA?

5 Posts
3 Usuários
0 Reactions
661 Visualizações
xlarruda
(@xlarruda)
Posts: 732
Honorable Member
Topic starter
 

Essa fórmula conta quantos valores eu tenho exclusivos de D5 até D25

{=SOMA(1/CONT.SE($D$5:$D$25;$D$5:$D$25))}

Porém ela é matricial..

tem como fazer ela em VBA?

Vlw! até mais

___________________________________________________________________________________________
Se a resposta atendeu sua dúvida, por favor, clique no Gostei e marque o Tópico como [Resolvido].

Att.

André Arruda

 
Postado : 19/10/2017 3:50 pm
(@osvaldomp)
Posts: 857
Prominent Member
 

Experimente:

ActiveCell.FormulaArray = "=SUM(1/COUNTIF($D$5:$D$25,$D$5:$D$25))"

EDIT: eu entendi que você queria inserir a fórmula via VBA, mas me parece que você quer é substituir a fórmula (o seu resultado) por VBA. De qualquer forma vou deixar, talvez alguém aproveite.

Osvaldo

 
Postado : 19/10/2017 6:19 pm
Wagner Morel
(@wagner-morel-vidal-nobre)
Posts: 0
Illustrious Member
 

xlarruda,

Boa Noite!

Segue minha sugestão.

Sub ContarDistintos()
    Dim i As Long
    Dim j As Long
    Dim Contar As Long
    Dim UltimaLinha As Long
    Dim PrimeiraVezIgual As Boolean
    
    PrimeiraVezIgual = False
    UltimaLinha = Sheets("Plan1").Cells(Cells.Rows.Count, 4).End(xlUp).Row
    If UltimaLinha < 5 Then UltimaLinha = 5
    
    'Contar = 1
    For i = 5 To UltimaLinha
        For j = i + 1 To UltimaLinha
            If Range("D" & i).Value <> Range("D" & j).Value Then
                If j = UltimaLinha Then
                    Contar = Contar + 1
                End If
            Else
                If PrimeiraVezIgual = False Then
                    Contar = Contar + 1
                    PrimeiraVezIgual = True
                    Exit For
                Else
                    Exit For
                End If
            End If
        Next
    Next
    
    Range("D" & UltimaLinha + 1).Value = Contar
End Sub

O site não está aceitando anexar arquivos.

Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)

Atenciosamente
Wagner Morel

 
Postado : 19/10/2017 6:42 pm
(@osvaldomp)
Posts: 857
Prominent Member
 

Resultado em 'F1':

Sub ContaÚnicos()
 [F1] = Evaluate("=SUM(1/COUNTIF($D$5:$D$25,$D$5:$D$25))")
End Sub

Osvaldo

 
Postado : 20/10/2017 5:25 am
xlarruda
(@xlarruda)
Posts: 732
Honorable Member
Topic starter
 

Pessoal, a todos muito obrigado pela ajuda, funcionaram perfeitamente.

Vlw!

___________________________________________________________________________________________
Se a resposta atendeu sua dúvida, por favor, clique no Gostei e marque o Tópico como [Resolvido].

Att.

André Arruda

 
Postado : 20/10/2017 7:25 am