ERRO AO CRIAR FÓRMULA COM VBA
CHDSSANTOS, como faço a fórmula CONT. VALORES? Já tentei fazer de todas as formas, mas não dá certo. A minha intenção seria contar qualquer valor. Usando a fórmula manualmente funciona, mas usando Macro já não dá certo.
KELLY, uma dica. Quer saber como fazer no VBA qualquer fórmula? Simples, depure o código e adicione na janela de inspeção de variáveis uma referência a célula em que a fórmula está e veja a propriedade [Ô]Formula[Ô]. Vai ser mostrado exatamente como você deve fazer essa fórmula no VBA.
Kelly, boa noite!
A formula CONT.VALORES conta qualquer valor diferente de vazio em um intervalo.
Ex:
=CONT.VALORES(D4:D30)
A célula que conter o código acima apresentar um numero que é a quantidade de células que possuem qualquer valor (numérico ou alfanumérico) no intervalo entre a D4 e D30.
VBA: ThisWorkbook.Sheets([Ô]Cont.Valores[Ô]).Range([Ô]D2[Ô]) = [Ô]=COUNTA(R[2]C:R[28]C)[Ô]
No entanto, a formula CONT.SES(D4:D30;[Ô]<>[Ô]), que encaminhei no arquivo anexo na mensagem anterior também realizará a mesma ação.
VBA: ThisWorkbook.Sheets([Ô]Cont.Ses[Ô]).Range([Ô]D2[Ô]) = [Ô]=COUNTIFS(R[2]C:R[28]C,[Ô][Ô]<>[Ô][Ô])[Ô]
Veja este arquivo que estou anexando nesta mensagem.
A formula CONT.VALORES conta qualquer valor diferente de vazio em um intervalo.
Ex:
=CONT.VALORES(D4:D30)
A célula que conter o código acima apresentar um numero que é a quantidade de células que possuem qualquer valor (numérico ou alfanumérico) no intervalo entre a D4 e D30.
VBA: ThisWorkbook.Sheets([Ô]Cont.Valores[Ô]).Range([Ô]D2[Ô]) = [Ô]=COUNTA(R[2]C:R[28]C)[Ô]
No entanto, a formula CONT.SES(D4:D30;[Ô]<>[Ô]), que encaminhei no arquivo anexo na mensagem anterior também realizará a mesma ação.
VBA: ThisWorkbook.Sheets([Ô]Cont.Ses[Ô]).Range([Ô]D2[Ô]) = [Ô]=COUNTIFS(R[2]C:R[28]C,[Ô][Ô]<>[Ô][Ô])[Ô]
Veja este arquivo que estou anexando nesta mensagem.
CHDSSANTOS, funcionou. Obrigada!!
Por que você colocou os números entre colchetes em R[2]C:R[28]C e qual a finalidade dessa letra R ?
Por que você colocou os números entre colchetes em R[2]C:R[28]C e qual a finalidade dessa letra R ?
KELLY,
Uma maneira de criar formulas com VBA é através do padrão R1C1 (Linha/Coluna), esta forma determina a posição dos campos da formula por numeros.
Já quanto aos colchetes, quando eles estão na formula indicam que campo não é travado (=CONT.SES(D4:D30;[Ô]<>[Ô])), ou seja a formula deve se adaptar dependendo de onde ela for colocada, quando vc os retira a formula fica travada (=CONT.SES($D$4:$D$30;[Ô]<>[Ô])),
Uma maneira de criar formulas com VBA é através do padrão R1C1 (Linha/Coluna), esta forma determina a posição dos campos da formula por numeros.
Já quanto aos colchetes, quando eles estão na formula indicam que campo não é travado (=CONT.SES(D4:D30;[Ô]<>[Ô])), ou seja a formula deve se adaptar dependendo de onde ela for colocada, quando vc os retira a formula fica travada (=CONT.SES($D$4:$D$30;[Ô]<>[Ô])),
Tópico encerrado , respostas não são mais permitidas