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
- Userform vba récupérer valeur - Forum Excel
- Pointillé et userform ✓ - Forum Excel
- Création d'un UserForm sur Word 2016 Mac - Forum Word
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