• Initiateur de la discussion Initiateur de la discussion aziz
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Re : Nombre de jours

Bonjour aziz
Essaie avec cette macro

Code:
Sub test()
Dim texte As String
Dim DateValid As Date
Dim ligne As Integer

ligne = 2
texte = ""
    Do While Feuil1.Cells(ligne, 3).Text <> ""
        DateValid = CDate(Feuil1.Cells(ligne, 3).Value)

        texte = texte & "La " & Feuil1.Cells(ligne, 1).Value & " est livré dans " & Int(DateValid - Now()) & " jours" & Chr(13)
        ligne = ligne + 1
        
      If Feuil1.Cells(ligne, 3).Text = "" Then
        ligne = ligne + 1
        End If
      
        
    Loop
    MsgBox texte
End Sub
 
Re : Nombre de jours

Bonjour à tous,

Peux-tu essayer avec :

Code:
Sub test()
    Dim texte As String
    Dim DateValid As Date
    Dim ligne As Integer


    ligne = 2
    texte = ""
    Do While Feuil1.Cells(ligne, 1).Text <> ""
        If Feuil1.Cells(ligne, 3) <> "" Then
            DateValid = CDate(Feuil1.Cells(ligne, 3).Value)
            If Int(DateValid - Now()) > 0 Then
                texte = texte & "La " & Feuil1.Cells(ligne, 1).Value & " est livrée dans " & Int(DateValid - Now()) & " jours" & Chr(13)
            Else
                texte = texte & "La " & Feuil1.Cells(ligne, 1).Value & " a été livrée il y a " & Int(Now() - DateValid) & " jours" & Chr(13)
            End If
        End If
        ligne = ligne + 1
    Loop
    MsgBox texte
End Sub

A+ à tous

Edition : Oups, pas vu Zeltron... Salut !
 
Dernière édition:
Re : Nombre de jours

Bonsour®
Super, merci beaucoup zeltron24 et JCGL
ça fonctionne. j'ai une question, est ce possible de mettre en rouge dans la msgbox les produits déjà livrés ?
merci

Non 🙁
mais comme à fait JCGL :
VB:
Sub test()
Dim texte As String
Dim DateValid As Date
Dim ligne As Integer

ligne = 2
texte = ""
    Do While Feuil1.Cells(ligne, 1).Text <> ""
        DateValid = CDate(Feuil1.Cells(ligne, 3).Value)
        If DateValid > 0 Then
        texte = texte & Feuil1.Cells(ligne, 1).Value & Chr(9) & IIf(DateValid < Now, " Dispo depuis ", " Livrable dans ") & Abs(Int(DateValid - Int(Now()))) & " jours" & Chr(13)
        End If
        ligne = ligne + 1
    Loop
    MsgBox texte
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
6
Affichages
206
Réponses
3
Affichages
149
Réponses
23
Affichages
682
Retour