Boa tarde,
O erro quando você coloca 'Maio' é porque não tem nenhuma planilha chamada Maio no seu arquivo.
Agora sobre o erro quando você coloca 'Abril' e '3', teste esse código:
Private Sub prim_Change()
'Se for diferente de vazio
If prim.Value <> Empty And mes.Value <> Empty And dia.Value <> Empty Then
ThisWorkbook.Activate
Rem Lembre-se Cells(Linha,Coluna)
Dim NomeMes As String
Dim D As String
Dim Ws As Worksheet
NomeMes = mes.Value
Set Ws = Sheets(NomeMes)
Dim Ncol As Double
Dim k As Double
k = 2
Do While Ws.Cells(3, k).Value <> Empty _
Or UCase(Trim(Ws.Cells(3, k).Value)) <> UCase(Trim(("Pontuação")))
'Achar o valor do dia
D = Day(Ws.Cells(3, k).Value)
If D = dia.Value Then
'A coluna recebe seu valor
Ncol = k
'Sai do Loop
Exit Do
End If
k = k + 1
Loop
Dim Nlin As Double: Nlin = Ws.Range("A1048575").End(xlUp).Row
Dim i As Double
'Apaga o valor 1 anterior
For i = 3 To Nlin
'Mude aqui para o número desejado
If Trim(Ws.Cells(i, Ncol).Value) = 1 Then
Ws.Cells(i, Ncol).Value = Empty
Exit For
End If
Next i
'Coloca o número 1
For i = 3 To Nlin
If Trim(Ws.Cells(i, 1).Value) = Trim(prim.Value) Then
'Mude aqui para o número desejado
Ws.Cells(i, Ncol).Value = 1
Exit For
End If
Next i
End If
End Sub
Lembre-se que esse código só vai funcionar para uma planilha com a mesma estrutura do exemplo que você colocou.
att,
Postado : 14/05/2017 3:38 pm