Notifications
Clear all

Workbook_Open

3 Posts
2 Usuários
0 Reactions
1,145 Visualizações
(@vonzuben)
Posts: 549
Honorable Member
Topic starter
 

Código 1 funciona na range D13, já o código 2, não !
Quando coloco o código da range D12 no CASE não passa e se deixar somente o código da D13, funciona !

Código 1

Private Sub Workbook_Open()

Dim DataAgo As Date

DataAgo = DateSerial(Year(Date), 8, 15)

If Date > DataAgo Then

    Planilha1.Range("D13").FormulaR1C1 = "=R[-1]C[6]+RC[2]-RC[4]"

End If

End Sub

Código 2

Private Sub Workbook_Open()

Select Case Date
           
  Case Is > DateSerial(Year(Date), 7, 27)
            Planilha1.Range("D12").FormulaR1C1 = "=R[-1]C[6]+RC[2]-RC[4]"
  
  Case Is > DateSerial(Year(Date), 8, 15)
            Planilha1.Range("D13").FormulaR1C1 = "=R[-1]C[6]+RC[2]-RC[4]"
       
End Select

End Sub

Obrigado !

 
Postado : 21/08/2018 9:06 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa noite!

No código 2 a primeira condição da estrutura Select Case verifica se a data de hoje é maior que 27/07/2018 (este ano) e coloca uma fórmula na célula D12.
Somente se a primeira condição não for atendida é que a segunda é verificada, portanto, no máximo, uma condição vai ser executada.

Abraço

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 21/08/2018 9:30 pm
(@vonzuben)
Posts: 549
Honorable Member
Topic starter
 

Marquei, realmente, pois a primeira está acima do mês 7, então, já está considerando a primeira !

 
Postado : 22/08/2018 8:13 am