Probléme d'éxecution
Fermé
belba.yahya
Messages postés
112
Date d'inscription
mercredi 2 janvier 2019
Statut
Membre
Dernière intervention
5 août 2020
-
30 janv. 2019 à 19:30
belba.yahya Messages postés 112 Date d'inscription mercredi 2 janvier 2019 Statut Membre Dernière intervention 5 août 2020 - 3 févr. 2019 à 16:48
belba.yahya Messages postés 112 Date d'inscription mercredi 2 janvier 2019 Statut Membre Dernière intervention 5 août 2020 - 3 févr. 2019 à 16:48
A voir également:
- Probléme d'éxecution
- Erreur d'execution 1004 ✓ - Forum VB / VBA
- Erreur d'execution 13 ✓ - Forum Programmation
- Un administrateur vous a refusé l'execution de cette application - Forum Windows 10
- Le service spouleur d'impression local n'est pas en cours d'exécution - Guide
- Net user des erreurs ont affecté l'exécution de la commande - Forum Windows
4 réponses
NHenry
Messages postés
15113
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
22 avril 2024
331
30 janv. 2019 à 19:49
30 janv. 2019 à 19:49
Sur quelle ligne de code ?
Avec quelle erreur ?
Avec quelle erreur ?
belba.yahya
Messages postés
112
Date d'inscription
mercredi 2 janvier 2019
Statut
Membre
Dernière intervention
5 août 2020
Modifié le 30 janv. 2019 à 21:51
Modifié le 30 janv. 2019 à 21:51
voilà
quand j'ouvre mon classeur à nouveau il m'affiche:"erreur d'éxecution '380' et quand je fais débogage il me donne couleur rouge dans l'avant dérnier ligne la phrase suivante: (.ComboBox1.ListIndex = Mo - 1 )
et voiçi mon code:
quand j'ouvre mon classeur à nouveau il m'affiche:"erreur d'éxecution '380' et quand je fais débogage il me donne couleur rouge dans l'avant dérnier ligne la phrase suivante: (.ComboBox1.ListIndex = Mo - 1 )
et voiçi mon code:
Option Explicit ' *********************************************************************** ' V2 = OK Sub Init_Combo(Optional x As Byte) Dim i As Byte With Sheets("planning") .ComboBox1.List = Array("Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre") For i = 1 To 20 .ComboBox2.AddItem 2018 + i Next i End With End Sub Sub Prec(Optional x As Byte) PrecSuiv False End Sub Sub Suiv(Optional x As Byte) PrecSuiv True End Sub Sub PrecSuiv(Plus As Boolean) Dim Mo As Integer, An As Integer With Sheets("Planning") Mo = .ComboBox1.ListIndex + 1 An = .ComboBox2.Value Mo = Mo + IIf(Plus, 1, -1) An = An + IIf(Mo = 0, -1, IIf(Mo = 13, 1, 0)) Mo = IIf(Mo = 0, 12, IIf(Mo = 13, 1, Mo)) .ComboBox1.ListIndex = Mo - 1 .ComboBox2.Value = An End With End Sub
EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI Merci d'y penser dans tes prochains messages. |
NHenry
Messages postés
15113
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
22 avril 2024
331
30 janv. 2019 à 21:56
30 janv. 2019 à 21:56
Il est bien aussi de préciser le message d'erreur.
Mais rapidement, je dirais que peut être que ton ComboBox n'est pas encore rempli au moment du premier appel, donc pas possible de sélectionner un élément.
Mais rapidement, je dirais que peut être que ton ComboBox n'est pas encore rempli au moment du premier appel, donc pas possible de sélectionner un élément.
belba.yahya
Messages postés
112
Date d'inscription
mercredi 2 janvier 2019
Statut
Membre
Dernière intervention
5 août 2020
30 janv. 2019 à 22:05
30 janv. 2019 à 22:05
voiçi le code VBA que j'ai fais dans le module
Sub Init_Combo(Optional x As Byte)
Dim i As Byte
With Sheets("planning")
.ComboBox1.ListIndex = Array("Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre")
For i = 1 To 20
.ComboBox2.AddItem 2018 + i
Next i
End With
End Sub
Sub Prec(Optional x As Byte)
PrecSuiv False
End Sub
Sub Suiv(Optional x As Byte)
PrecSuiv True
End Sub
Sub PrecSuiv(Plus As Boolean)
Dim Mo As Integer, An As Integer
With Sheets("planning")
Mo = .ComboBox1.ListIndex + 1
An = .ComboBox2.Value
Mo = Mo + IIf(Plus, 1, -1)
An = An + IIf(Mo = 0, -1, IIf(Mo = 13, 1, 0))
Mo = IIf(Mo = 0, 12, IIf(Mo = 13, 1, Mo))
.ComboBox1.ListIndex = Mo - 1
.ComboBox2.Value = An
End With
End Sub
alors il m'affiche erreur d'execution dans la phrase suivante qui tout en dessous:.ComboBox1.ListIndex = Mo - 1
Sub Init_Combo(Optional x As Byte)
Dim i As Byte
With Sheets("planning")
.ComboBox1.ListIndex = Array("Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre")
For i = 1 To 20
.ComboBox2.AddItem 2018 + i
Next i
End With
End Sub
Sub Prec(Optional x As Byte)
PrecSuiv False
End Sub
Sub Suiv(Optional x As Byte)
PrecSuiv True
End Sub
Sub PrecSuiv(Plus As Boolean)
Dim Mo As Integer, An As Integer
With Sheets("planning")
Mo = .ComboBox1.ListIndex + 1
An = .ComboBox2.Value
Mo = Mo + IIf(Plus, 1, -1)
An = An + IIf(Mo = 0, -1, IIf(Mo = 13, 1, 0))
Mo = IIf(Mo = 0, 12, IIf(Mo = 13, 1, Mo))
.ComboBox1.ListIndex = Mo - 1
.ComboBox2.Value = An
End With
End Sub
alors il m'affiche erreur d'execution dans la phrase suivante qui tout en dessous:.ComboBox1.ListIndex = Mo - 1
belba.yahya
Messages postés
112
Date d'inscription
mercredi 2 janvier 2019
Statut
Membre
Dernière intervention
5 août 2020
30 janv. 2019 à 22:06
30 janv. 2019 à 22:06
je le rectifie dans le débogage mais en fermant le classeur et l'ouvrir à nouveau je trouve les deux combobox vide+une erreur d'éxécution'380'
NHenry
Messages postés
15113
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
22 avril 2024
331
31 janv. 2019 à 18:32
31 janv. 2019 à 18:32
Il faut appeller "Init_Combo" pour remplir la liste, elle n'est pas sauvegardée par VBA, tu dois le faire toi même.
De plus à quoi te sert le paramètre "x" ?
De plus à quoi te sert le paramètre "x" ?
belba.yahya
Messages postés
112
Date d'inscription
mercredi 2 janvier 2019
Statut
Membre
Dernière intervention
5 août 2020
3 févr. 2019 à 16:48
3 févr. 2019 à 16:48
je ne sais pas vraiment Monsieur Henry
sauf que j'ai copié le code car je n'ai pas trouver un moyen de créer un tableau sous forme de calendrier pour mon travail,alors j'ai choisis les combobox pour simplifier la recherche dans le planning calendrier pour qu'il me donne les journée du mois recherché sur le combobox.
sauf que j'ai copié le code car je n'ai pas trouver un moyen de créer un tableau sous forme de calendrier pour mon travail,alors j'ai choisis les combobox pour simplifier la recherche dans le planning calendrier pour qu'il me donne les journée du mois recherché sur le combobox.
belba.yahya
Messages postés
112
Date d'inscription
mercredi 2 janvier 2019
Statut
Membre
Dernière intervention
5 août 2020
31 janv. 2019 à 20:47
31 janv. 2019 à 20:47
merci M Henry pour votre réponse
de toute façon j'ai copié ce code dans mon classeur, j'ai fais toute les possibilités pour résoudre mon problème,comment puis-je appeler "init_combo" "x" je ne sais même pas: à mon avis "Sub Prec" et "Sub Suiv" pour faire bouger combobox ex:
Combobox= Janvier, si je clique suiv, c'est février, et si Prec c'est décembre.
de toute façon j'ai copié ce code dans mon classeur, j'ai fais toute les possibilités pour résoudre mon problème,comment puis-je appeler "init_combo" "x" je ne sais même pas: à mon avis "Sub Prec" et "Sub Suiv" pour faire bouger combobox ex:
Combobox= Janvier, si je clique suiv, c'est février, et si Prec c'est décembre.
NHenry
Messages postés
15113
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
22 avril 2024
331
3 févr. 2019 à 16:09
3 févr. 2019 à 16:09
"x" je ne sais même pas
Donc tu as récupéré un bout de code sur le net sans essayer de le comprendre ?
Tu peux appeler "init_combo" dans le Initialize de ton Userform.
Donc tu as récupéré un bout de code sur le net sans essayer de le comprendre ?
Tu peux appeler "init_combo" dans le Initialize de ton Userform.
30 janv. 2019 à 21:01