Notifications
Clear all

Cálculo de datas entre dias

9 Posts
2 Usuários
0 Reactions
2,017 Visualizações
(@robert)
Posts: 561
Honorable Member
Topic starter
 

Galera,
Bom dia !

Preciso de uma ajudinha de todos vocês .

Vejam o anexo .

Obrigado desde já.

Att,
Robert / Moderador

Leia aqui as regras do fórum - Click -->> http://www.planilhando.com.br/forum/viewforum.php?f=7

SE A RESPOSTA FOI ÚTIL, AGRADEÇA CLICANDO NA MÃOZINHA LADO SUPERIOR DIREITO.

 
Postado : 06/01/2017 8:14 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Bem seu arquivo/modelo não acrescenta muito. Não foi especificado o que gerar deve executar e qual ou onde será a saída.
O Calculo pode ser efetuado pela função VBA --> DateAdd (detalhes veja o help do VBA).
Supondo que a saida/retorno do resultado seja em um texbox:
Algo +/- assim:

Private Sub CommandButton1_Click()
TextBox3 = Format(VBA.DateAdd("d", 91, VBA.CDate(Me.TextBox1)), "dd/mm/yyyy")
End Sub

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

 
Postado : 06/01/2017 8:33 am
(@robert)
Posts: 561
Honorable Member
Topic starter
 

Reinaldo,
Bom dia !

O resultado sairá em uma tecbox ( msgbox).

Poderia incluir o código na planilha, não possuo muita experiencia .

Vlw !

Att,
Robert / Moderador

Leia aqui as regras do fórum - Click -->> http://www.planilhando.com.br/forum/viewforum.php?f=7

SE A RESPOSTA FOI ÚTIL, AGRADEÇA CLICANDO NA MÃOZINHA LADO SUPERIOR DIREITO.

 
Postado : 06/01/2017 8:37 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Segue

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

 
Postado : 06/01/2017 8:58 am
(@robert)
Posts: 561
Honorable Member
Topic starter
 

O código funcionou perfeitamente, só que o dia 91 ficou fixo, coloquei 91 dias só como exemplo, gostaria que ficasse aleatório podendo colocar qualquer dia.

Também faltou dizer quantos números de meses compõem o intervalo de datas e o dia .

ex: DATA INCIAL: 01/01/2015 +91 DIAS = RESULTADO 02/04/2015 - 3 MESES E 1 DIA.

vLW!

Att,
Robert / Moderador

Leia aqui as regras do fórum - Click -->> http://www.planilhando.com.br/forum/viewforum.php?f=7

SE A RESPOSTA FOI ÚTIL, AGRADEÇA CLICANDO NA MÃOZINHA LADO SUPERIOR DIREITO.

 
Postado : 06/01/2017 9:09 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Altere

Private Sub CommandButton1_Click()
TextBox3 = Format(VBA.DateAdd("d",vba.cdec(TextBox2), VBA.CDate(Me.TextBox1)), "dd/mm/yyyy")
End Sub[code][/code]

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

 
Postado : 06/01/2017 12:30 pm
(@robert)
Posts: 561
Honorable Member
Topic starter
 

Reinaldo, mais uma vez obrigado pela ajuda.

Para o resultado da soma entre a DATA e DIA funcionou perfeitamente.

Gostaria que além do resultado da DATA ele me desse quantos MESES e dias COMPÕEM esse intervalo .Exemplo :

Att,
Robert / Moderador

Leia aqui as regras do fórum - Click -->> http://www.planilhando.com.br/forum/viewforum.php?f=7

SE A RESPOSTA FOI ÚTIL, AGRADEÇA CLICANDO NA MÃOZINHA LADO SUPERIOR DIREITO.

 
Postado : 06/01/2017 7:39 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Talvez assim:

Private Sub CommandButton1_Click()
Dim cMes As String, cDia As String
TextBox3 = Format(VBA.DateAdd("d", VBA.CDec(TextBox2), VBA.CDate(Me.TextBox1)), "dd/mm/yyyy")
cMes = VBA.DateDiff("m", TextBox1, TextBox3)
cDia = VBA.DateDiff("d", TextBox1, VBA.DateAdd("m", cMes * -1, TextBox3))
If cMes > 1 Then
    cMes = cMes & " Meses"
Else
    cMes = cMes & " Mês"
End If
If cDia > 1 Then
    cDia = cDia & " Dias"
Else
    cDia = cDia & " Dia"
End If
MsgBox "A nova data: " & TextBox3 & Chr(10) & cMes & " ; " & cDia
End Sub

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

 
Postado : 07/01/2017 7:39 am
(@robert)
Posts: 561
Honorable Member
Topic starter
 

Reinaldo,
Bom dia !

Muito obrigado! Funcionou perfeitamente.

Um grande abraço,

Att,
Robert / Moderador

Leia aqui as regras do fórum - Click -->> http://www.planilhando.com.br/forum/viewforum.php?f=7

SE A RESPOSTA FOI ÚTIL, AGRADEÇA CLICANDO NA MÃOZINHA LADO SUPERIOR DIREITO.

 
Postado : 09/01/2017 9:08 am