Ranking de pontuaçã...
 
Notifications
Clear all

Ranking de pontuação

16 Posts
2 Usuários
0 Reactions
2,593 Visualizações
(@puretna)
Posts: 11
Active Member
Topic starter
 

Boa noite !
Sou novato no Excel e, principalmente, em VBA. Estou fazendo um ranking de pontuação no qual a cada mês (dispostos em colunas sucessivas) o valor da pontuação é acrescido em 8%. Ex: Janeiro: Pontos * 8%; Fevereiro: Pontos * 16% e assim sucessivamente........
Fiz uma macro assim:
Janeiro

Sub Calcular()
For Rownum = 3 To 50
        If Cells(Rownum, 2) = 0 Or Cells(Rownum, 2) = "" Then
        Cells(Rownum, 2) = ""
        Else
        coeficiente = 8 / 100
        Cells(Rownum, 2) = Cells(Rownum, 2) * (1 + coeficiente)
        End If
Next Rownum
End Sub

Fevereiro:
Sub Calcular1()
For Rownum = 3 To 50
        If Cells(Rownum, 3) = 0 Or Cells(Rownum, 3) = "" Then
        Cells(Rownum, 3) = ""
        Else
        coeficiente = 16 / 100
        Cells(Rownum, 3) = Cells(Rownum, 3) * (1 + coeficiente)
        End If
Next Rownum
End Sub.

Até que deu certo, só que eu teria que fazer vários botões, porque, na verdade, é mais de um ano. Pergunta: Teria como otimizar isso, pra não ter que fazer tantas sub rotinas, ou ainda não ter que fazer macro, sendo apenas atualizado automaticamente na planilha ao digitar um valor na célula (direto no Excel daria referência circular) ?

Desde já agradeço!

 
Postado : 12/05/2013 5:03 pm
(@puretna)
Posts: 11
Active Member
Topic starter
 

Essa sua instrução já resolveu, coloquei : if not isnumeric(sval) Then Exit sub
Agora ele aceita texto em qualquer célula, e faz os cálculos quando digito algum número. Isso seria útil caso queira mudar a formatação no futuro. Mais uma vez muito obrigado, mauro!

 
Postado : 17/05/2013 6:55 pm
Página 2 / 2