Variable qui ne change pas (VBA EXCEL )
Résolu
coconuts_n
Messages postés
23
Statut
Membre
-
coconuts_n Messages postés 23 Statut Membre -
coconuts_n Messages postés 23 Statut Membre -
Bonjour,
J'ai un problème. J'ai des données dans une feuille excel et je veux créer une box qui s'affichent dès le démarrage pour signaler des relances à effectuer avec des boutons "suivant" et "sortir". Cliquer sur suivant, donne la relance suivante et cliquer sur sortir arrête la macro.
Dans un fichier excel, j'ai mis dans "ThisWorkBook" :
Sub Workbook_Open()
Call Module2.Ouverture_Relance
DoEvents
End Sub
Ensuite, j'utilise un premier formulaire lancé à partir du module 2 :
Option Explicit
Public Numéro_Aliment As Long
Public Date_Dernier_Mail, Date_Derniere_Rép As Date
Public z As Integer
Public msg As String
Public continuer as Boolean
Sub Ouverture_Relance()
z = 9 'on commence à la ligne 9
Do
If Cells(z, 53).Value = "Mail à envoyer" Then
Numéro_Aliment = Cells(z, 1).Value
Date_Dernier_Mail = Cells(z, 54).Value
Date_Derniere_Rép = Cells(z, 51).Value
msg = "L'aliment " & Numéro_Aliment & " est à relancer. Dernier mail envoyé par l'entreprise le " & Date_Dernier_Mail & ". Dernière réponse du client le " & Date_Derniere_Rép
Messageform.Show 'ouvre une box contenant la phrase "msg" et contenant les boutons "suivant" et "sortir"
If Continuer = False Then
Exit Sub
End If
z = z + 1
End If
Loop Until z - 8 > Cells(1, 4).Value 'critère de fin
MsgBox ("Il n'y a plus de relances à faire")
Else
End If
End Sub
Dans le feuille d'un userform j'ai mis:
Option Explicit
Sub UserForm_Initialize()
Label1.Caption = msg
End Sub
Voilà! Le problème arrive quand il y a plusieurs relances à effectuer. La box qui s'affiche contient le bon message pour le premier lot mais pour les autres lots, le message reste inchangé.
J'ai essayé de mettre autre chose que "initialize", comme activate mais j'ai rien trouvé qui marche.
Merci d'avance =)
J'ai un problème. J'ai des données dans une feuille excel et je veux créer une box qui s'affichent dès le démarrage pour signaler des relances à effectuer avec des boutons "suivant" et "sortir". Cliquer sur suivant, donne la relance suivante et cliquer sur sortir arrête la macro.
Dans un fichier excel, j'ai mis dans "ThisWorkBook" :
Sub Workbook_Open()
Call Module2.Ouverture_Relance
DoEvents
End Sub
Ensuite, j'utilise un premier formulaire lancé à partir du module 2 :
Option Explicit
Public Numéro_Aliment As Long
Public Date_Dernier_Mail, Date_Derniere_Rép As Date
Public z As Integer
Public msg As String
Public continuer as Boolean
Sub Ouverture_Relance()
z = 9 'on commence à la ligne 9
Do
If Cells(z, 53).Value = "Mail à envoyer" Then
Numéro_Aliment = Cells(z, 1).Value
Date_Dernier_Mail = Cells(z, 54).Value
Date_Derniere_Rép = Cells(z, 51).Value
msg = "L'aliment " & Numéro_Aliment & " est à relancer. Dernier mail envoyé par l'entreprise le " & Date_Dernier_Mail & ". Dernière réponse du client le " & Date_Derniere_Rép
Messageform.Show 'ouvre une box contenant la phrase "msg" et contenant les boutons "suivant" et "sortir"
If Continuer = False Then
Exit Sub
End If
z = z + 1
End If
Loop Until z - 8 > Cells(1, 4).Value 'critère de fin
MsgBox ("Il n'y a plus de relances à faire")
Else
End If
End Sub
Dans le feuille d'un userform j'ai mis:
Option Explicit
Sub UserForm_Initialize()
Label1.Caption = msg
End Sub
Voilà! Le problème arrive quand il y a plusieurs relances à effectuer. La box qui s'affiche contient le bon message pour le premier lot mais pour les autres lots, le message reste inchangé.
J'ai essayé de mettre autre chose que "initialize", comme activate mais j'ai rien trouvé qui marche.
Merci d'avance =)
A voir également:
- Variable qui ne change pas (VBA EXCEL )
- Liste déroulante excel - Guide
- Change dns - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si ou excel - Guide
2 réponses
msg = "L'aliment " & Numéro_Aliment & " est à relancer. Dernier mail envoyé par l'entreprise le " & Date_Dernier_Mail & ". Dernière réponse du client le " & Date_Derniere_Rép
Messageform.Label1.Caption = msg
Messageform.Show 'ouvre une box contenant la phrase "msg" et contenant les boutons "suivant" et "sortir"
Messageform.Label1.Caption = msg
Messageform.Show 'ouvre une box contenant la phrase "msg" et contenant les boutons "suivant" et "sortir"