• Initiateur de la discussion Initiateur de la discussion lio
  • 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 !

L

lio

Guest
Bonjour le forum,
je suis débutant et j'essaie de faire une petite appli pour progresser.
Cependant, je m'apperçois que je bloque très vite notamment pour alimenter une combobox. J'ai tenté de faire avec la méthode Row Source mais sans réussite. Quelqu'un peut-il me montrer mes erreurs, sachant que je souhaiterai avoir quelque chose d'évolutif si des données changent sans avoir à changer tout le programme.

D'autre part, j'ai lu dans les archives qu'il faut utiliser la fonction décaler pour avoir une mise à jour automatique...

Merci.
[file name=Personne.zip size=11556]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Personne.zip[/file]
 

Pièces jointes

Bonjour Lio, bonjour le forum,

Plutôt que la méthode RowSource, je te conseille la méthode AddItem pour alimenter une ComboBox. Tu peux le faire par exemple à l'initialisation de l'UserForm avec le code suivant :


Option Explicit 'oblige à déclarer toutes les variables

Private Sub UserForm_Initialize() 'à l'initialisation de l'UserForm
Dim Dl As Long 'déclare la variable Dl (Dernière ligne)
Dim Pl As Range 'déclare la variable Pl (Plage)
Dim Cel As Range 'déclare la variable Cel (Cellule)

With Sheets('donnée')
Dl = .Range('A65536').End(xlUp).Row 'définit la variable Dl
Set Pl = .Range('A1:A' & Dl) 'définit la variable Pl
End With

'remplissage de la ComboBox 'choix' (je te conseille la méthode AddItem plutôt que RowSource)
'boucle sur toutes les cellules éditées de la colonne A
For Each Cel In Pl
choix.AddItem Cel.Value
Next Cel
End Sub
 
Merci beaucoup Robert. Entre temps, j'ai essayé une autre méthode avec addIttem mais ça m'a pas avancé plus. Je joins quand meme mon dossier au cas où. [file name=Personne_20051009174234.zip size=12332]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Personne_20051009174234.zip[/file]
 

Pièces jointes

Bonjour Lio, bonjour le forum,

Plusieurs erreurs dans ton code font que ça ne pouvait pas marcher :
1. tu as taper à la main Private Sub UserForm_Initialise() et tu t'es planté car c'est Initiali
ze. Pour éviter ce genre de déconvenue, choisis le composant dans le premier champ (en haut au dessus du grand rectangle blanc de droite) puis l'événement dans le second.
2. Tu ne peux pas nommer une feuille directement, tu dois utiliser la syntaxe Sheets('nom_de_la_feuille') ou Sheets(index) comme Sheets('donnees') ou Sheets(3).
3. Si tu commences une boucle par For il ne faut pas oublier le Next comme tu l'as fait, For x=2 To 6 mais tu n'as pas mis Next x. Ton code corrigé devient :


Private Sub UserForm_Initialize()
For x = 2 To 6
choix.AddItem Sheets('donnee').Cells(x, 4)
Next x
End Sub

Il fonctionne et ressemble beaucoup à celui que je t'ai donné sauf que dans l'état il est figé et ne s'actualise pas si tu rajoutes des équipes.

Jette un coup d'œil sur celui que je t'ai donné dans la première réponse. La plage des équipes s'actualise automatiquement.
 
Merci beaucoup Robert. J'ai encore appris plein de choses aujourd'hui.
Merci en général à tous les habitués pour vos réponses et je ne désespère pas dans quelques mois de donner moi aussi un coup de pouce.
Bonne soirée.
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

H
  • Question Question
Réponses
11
Affichages
2 K
L
Réponses
4
Affichages
2 K
L
B
Réponses
3
Affichages
2 K
B
D
Réponses
7
Affichages
2 K
Demouret
D
L
Réponses
2
Affichages
974
lepalois
L
H
Réponses
8
Affichages
2 K
Hélène
H
Réponses
1
Affichages
1 K
A
N
Réponses
3
Affichages
956
N
Z
Réponses
8
Affichages
1 K
S
Réponses
3
Affichages
1 K
SERENA
S
M
  • Question Question
Réponses
6
Affichages
1 K
mamounette
M
Réponses
1
Affichages
1 K
CELEDA AU PAYS DU VIN
C
Retour