UserForm ne marche pas
Résolu
Kuartz
Messages postés
852
Date d'inscription
Statut
Membre
Dernière intervention
-
Kuartz Messages postés 852 Date d'inscription Statut Membre Dernière intervention -
Kuartz Messages postés 852 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
En voulant répondre à un message du forum, je me suis confronté à un problème que j'avoue ne pas bien comprendre.
Mon code sur le UserForm :
Mon code sur un module :
Le code s'exécute mais même si j'ai une date par exemple 01/01/2015 en A2, avec le mot BONJOUR, je fais la recherche et le compteur m'indique 0 au lieu de 1...
Une idée?
Cordialement.
En voulant répondre à un message du forum, je me suis confronté à un problème que j'avoue ne pas bien comprendre.
Mon code sur le UserForm :
Public Sub CommandButton1_Click() MOIS_BOX = ComboBox1.Value Application.Run ("Code") Unload Me End Sub Private Sub UserForm_Initialize() With Me.ComboBox1 .AddItem "01" .AddItem "02" .AddItem "03" .AddItem "04" .AddItem "05" .AddItem "06" .AddItem "07" .AddItem "08" .AddItem "09" .AddItem "10" .AddItem "11" .AddItem "12" End With End Sub
Mon code sur un module :
Public MOIS_BOX As String Sub LANCER() UserForm1.Show End Sub Sub Code() Dim DL As Long Dim MOT As String Dim COMPTEUR As Long Dim MOIS As String DL = Cells(Application.Rows.Count, 1).End(xlUp).Row MOT = InputBox("Entrez le mot recherché") MOIS = MOIS_BOX For i = 2 To DL 'Changer le 2 pour la ligne où commencent les données If CStr(Month(CDate(Range("A" & i).Value))) = MOIS Then If CStr(Range("B" & i).Value) = MOT Then COMPTEUR = COMPTEUR + 1 End If End If Next i MsgBox (COMPTEUR) End Sub
Le code s'exécute mais même si j'ai une date par exemple 01/01/2015 en A2, avec le mot BONJOUR, je fais la recherche et le compteur m'indique 0 au lieu de 1...
Une idée?
Cordialement.
A voir également:
- UserForm ne marche pas
- Userform excel mac - Forum Excel
- Userform Petit ✓ - Forum VB / VBA
- Grandeur UserForm ✓ - Forum VB / VBA
- Userform vba récupérer valeur - Forum Excel
- Pointillé et userform ✓ - Forum Excel
1 réponse
Bonjour,
le mois de la cellule sur deux caracteres:
Pour tester un code, posez des points d'arrets et quand le programme s'arrete, passez le curseur souris sur les variables et/ou objets pour voir leurs contenus
Call Codesuffi, pas besoin de
Application.Run ("Code")
le mois de la cellule sur deux caracteres:
Sub Code() Dim DL As Long Dim MOT As String Dim COMPTEUR As Long Dim MOIS As String DL = Cells(Application.Rows.Count, 1).End(xlUp).Row MOT = InputBox("Entrez le mot recherché") MOIS = MOIS_BOX For i = 2 To DL 'Changer le 2 pour la ligne où commencent les données If CStr(Format(Month(CDate(Range("A" & i).Value)), "00")) = MOIS And CStr(Range("B" & i).Value) = MOT Then COMPTEUR = COMPTEUR + 1 End If Next i MsgBox (COMPTEUR) End Sub
Pour tester un code, posez des points d'arrets et quand le programme s'arrete, passez le curseur souris sur les variables et/ou objets pour voir leurs contenus
Merci pour votre réponse.
Cordialement.
Oui, c'est cela, le debugage sur excel est assez simple par les points d'arret; Il y a aussi l'instruction Debug.Print qui permet d'ecrire dans la fenetre d'execution (menu VBA, affichage, Fenetre d'execution) pour avoir des traces un peu plus complexes