Valeur par défault variable, Combobox, VBA.
Fermé
Julistage
Messages postés
29
Date d'inscription
lundi 20 septembre 2010
Statut
Membre
Dernière intervention
19 septembre 2014
-
18 nov. 2010 à 16:52
Julistage Messages postés 29 Date d'inscription lundi 20 septembre 2010 Statut Membre Dernière intervention 19 septembre 2014 - 22 nov. 2010 à 16:43
Julistage Messages postés 29 Date d'inscription lundi 20 septembre 2010 Statut Membre Dernière intervention 19 septembre 2014 - 22 nov. 2010 à 16:43
A voir également:
- Affecter valeur combobox vba
- Logiciel gratuit calcul valeur nutritionnelle - Télécharger - Santé & Bien-être
- Vba ouvrir un fichier excel avec chemin ✓ - Forum VB / VBA
- Find vba - Astuces et Solutions
- Vba attendre 1 seconde ✓ - Forum VB / VBA
- #Valeur excel somme - Guide
9 réponses
ccm81
Messages postés
10900
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
2 novembre 2024
2 425
18 nov. 2010 à 17:33
18 nov. 2010 à 17:33
bonjour
est ce que
Me.ComboBox3.Text = Range("A1").Value
répond à la question?
bonne suite
est ce que
Me.ComboBox3.Text = Range("A1").Value
répond à la question?
bonne suite
Julistage
Messages postés
29
Date d'inscription
lundi 20 septembre 2010
Statut
Membre
Dernière intervention
19 septembre 2014
3
19 nov. 2010 à 09:26
19 nov. 2010 à 09:26
Bonjour et merci de te pencher sur cette question :).
ça marche en effet, mais ça bloque ma combobox sur cette valeur. Impossible de changer de valeur par la suite :(. Et bizarrement ça m'a ajouté pleins de doublons :x y aurait-il une autre méthode ?
ça marche en effet, mais ça bloque ma combobox sur cette valeur. Impossible de changer de valeur par la suite :(. Et bizarrement ça m'a ajouté pleins de doublons :x y aurait-il une autre méthode ?
ccm81
Messages postés
10900
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
2 novembre 2024
2 425
19 nov. 2010 à 09:58
19 nov. 2010 à 09:58
re
et en mettant la propriete LinkedCell de la combobox3 à A1 ?
pour l'ajout des doublons, est ce que quelque part il n'y a pas un remplissage de la combobox exécuté intempestivement. Si oui, faire un .Clear avant
bon courage
et en mettant la propriete LinkedCell de la combobox3 à A1 ?
pour l'ajout des doublons, est ce que quelque part il n'y a pas un remplissage de la combobox exécuté intempestivement. Si oui, faire un .Clear avant
bon courage
Julistage
Messages postés
29
Date d'inscription
lundi 20 septembre 2010
Statut
Membre
Dernière intervention
19 septembre 2014
3
19 nov. 2010 à 11:43
19 nov. 2010 à 11:43
Re,
Je travail sur Excel 2003. Je ne vois pas cette propriété dans la combobox? :(
Je travail sur Excel 2003. Je ne vois pas cette propriété dans la combobox? :(
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ccm81
Messages postés
10900
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
2 novembre 2024
2 425
19 nov. 2010 à 11:53
19 nov. 2010 à 11:53
re
j'ai aussi excel 2003 et
ta combobox a certainement été crée avec la barre d'outils formulaire.
il vaudrait peut être mieux la créer avec la barre d'outils controles on a ainsi un acces à plus de propriétés. la combobox et son code seront alors liés à la feuille (le code ne sera plus dans un module)
si cette option te tentes
Affichage/Boite a outils controles et la petite equerre pour basculer du mode création au mode exécution. Tu pourra alors
- avec un clic droit avoir un acces direct a ses propriétés
- transporter ton code dans la feuille
bonne suite
j'ai aussi excel 2003 et
ta combobox a certainement été crée avec la barre d'outils formulaire.
il vaudrait peut être mieux la créer avec la barre d'outils controles on a ainsi un acces à plus de propriétés. la combobox et son code seront alors liés à la feuille (le code ne sera plus dans un module)
si cette option te tentes
Affichage/Boite a outils controles et la petite equerre pour basculer du mode création au mode exécution. Tu pourra alors
- avec un clic droit avoir un acces direct a ses propriétés
- transporter ton code dans la feuille
bonne suite
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
19 nov. 2010 à 13:43
19 nov. 2010 à 13:43
Bonjour ;o)
As-tu une procédure qui initialise ta combo ? Si oui remplace
par l'appel à ta procédure d'initialisation de ta combo.
Dans ta procédure d'initialisation tu dois avoir un combo.Clear en début
et un combo.Text = Worksheets(1).Range("A1").Value en fin de procédure.
;o)
As-tu une procédure qui initialise ta combo ? Si oui remplace
Me.ComboBox3.SelectedItem = Range("A1").Value
par l'appel à ta procédure d'initialisation de ta combo.
Dans ta procédure d'initialisation tu dois avoir un combo.Clear en début
et un combo.Text = Worksheets(1).Range("A1").Value en fin de procédure.
;o)
Julistage
Messages postés
29
Date d'inscription
lundi 20 septembre 2010
Statut
Membre
Dernière intervention
19 septembre 2014
3
19 nov. 2010 à 15:32
19 nov. 2010 à 15:32
Salut à tous les 2 :)
Bon la seule chose que j'ai réussie à faire c'est de faire une boucle infinie lol.
J'ai en effet une procédure qui initialise la combo.
En fait ma combobox se trouve justement sur un userform.
Je vais continuer à essayer de trifouiller le code. :)
Bon la seule chose que j'ai réussie à faire c'est de faire une boucle infinie lol.
J'ai en effet une procédure qui initialise la combo.
ComboBox3.clear For j = 1 To Range("AI65536").End(xlUp).Row ComboBox3 = Range("AI" & j) If ComboBox3.ListIndex = -1 Then ComboBox3.AddItem Range("AI" & j) Next j
En fait ma combobox se trouve justement sur un userform.
Je vais continuer à essayer de trifouiller le code. :)
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
19 nov. 2010 à 17:22
19 nov. 2010 à 17:22
Autre piste ...
Tu es dans l'évènement change() de la combo. Essaie avec le même code dans l'évènement Selection().
;o)
Tu es dans l'évènement change() de la combo. Essaie avec le même code dans l'évènement Selection().
;o)
Julistage
Messages postés
29
Date d'inscription
lundi 20 septembre 2010
Statut
Membre
Dernière intervention
19 septembre 2014
3
22 nov. 2010 à 09:24
22 nov. 2010 à 09:24
Salut :) J'ai changer le change en selection, et en fait ça vide juste ma listbox qui dépend de la combobox. ^^.
ccm81
Messages postés
10900
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
2 novembre 2024
2 425
22 nov. 2010 à 11:00
22 nov. 2010 à 11:00
re
et en mettant la propriété ControlSource à A1 puisque la combobox est créee dans une userform avec la boite a outils controles
bon courage
et en mettant la propriété ControlSource à A1 puisque la combobox est créee dans une userform avec la boite a outils controles
bon courage
Julistage
Messages postés
29
Date d'inscription
lundi 20 septembre 2010
Statut
Membre
Dernière intervention
19 septembre 2014
3
22 nov. 2010 à 15:23
22 nov. 2010 à 15:23
re, Alors je dois m'y prendre comme un pied, mais cela ne marche pas non plus :x... Dans la propriété control source j'ai mis: (sachant que ma feuille est la feuille "infos") infos!A1 c'est peut-être pas la bonne syntaxe?
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
22 nov. 2010 à 16:34
22 nov. 2010 à 16:34
Non tu ne t'y prends pas comme un pied, c'est simplement pas la bonne propriété.
Le problème doit venir d'ailleurs.
Que veux tu faire quand tu fais ta boucle :
Remplir ta combo ? si oui alors :
Je ne comprends pas pourquoi cette ligne
Elle fait quoi au juste ?
Le problème doit venir d'ailleurs.
Que veux tu faire quand tu fais ta boucle :
ComboBox3.clear For j = 1 To Range("AI65536").End(xlUp).Row ComboBox3 = Range("AI" & j) If ComboBox3.ListIndex = -1 Then ComboBox3.AddItem Range("AI" & j) Next j
Remplir ta combo ? si oui alors :
ComboBox3.clear For j = 1 To Range("AI65536").End(xlUp).Row ComboBox3.AddItem Range("AI" & j) Next j ComboBox3.Text = Worksheets(1).Range("A1").Value
Je ne comprends pas pourquoi cette ligne
If ComboBox3.ListIndex = -1 Then ComboBox3.AddItem Range("AI" & j)
Elle fait quoi au juste ?
Julistage
Messages postés
29
Date d'inscription
lundi 20 septembre 2010
Statut
Membre
Dernière intervention
19 septembre 2014
3
Modifié par Julistage le 22/11/2010 à 16:45
Modifié par Julistage le 22/11/2010 à 16:45
Elle me permet de remplir ma combobox sans doublons.
En fait je procède en deux parties. Dans une première fonction, je remplie la combobox, et dans une seconde je lui dis que ce qui se trouve dans la listbox doit varier en fonction de la selection.
d'ou:
Et
La combobox contient le nom de tous les onglets du fichier.
Mais en fait ma fonction main utilise un onglet à un moment donné. ce nom d'onglet, je l'ai mis dans la cellule A1 de la feuille infos. Et je souhaiterais qu'à l'ouverture, ma combobox soit par défaut sur ce nom d'onglet, mais que j'ai malgré tout l'accès aux autres choix de la combobox et que je puisse la consulter.
En fait je procède en deux parties. Dans une première fonction, je remplie la combobox, et dans une seconde je lui dis que ce qui se trouve dans la listbox doit varier en fonction de la selection.
d'ou:
sub main() ... ... ... 'Récupère les données de la colonne A... For j = 1 To Range("AI65536").End(xlUp).Row ComboBox3 = Range("AI" & j) '...et filtre les doublons If ComboBox3.ListIndex = -1 Then ComboBox3.AddItem Range("AI" & j) Next j ... ... ... End Sub
Et
Private Sub ComboBox3_change() 'Lie la ComboBox avec la Listbox sur l'onglet 1. ("Fenêtre de contrôle") Dim k, j, i As Integer Dim NomOnglet As Variant Me.ListSources.Clear Me.ListBox26.Clear For j = 1 To Range("AJ65536").End(xlUp).Row If Cells(j, 35) = ComboBox3.Value Or (Val(ComboBox3.Value) = Cells(j, 35) And Val(ComboBox3.Value) = ComboBox3.Value) Then Me.ListSources.AddItem Workbooks("Correspondance vFinal 2.3.xls").Sheets("infos").Cells(j, 36).Value k = k + 1 Me.ListSources.List(k - 1, 1) = Workbooks("Correspondance vFinal 2.3.xls").Sheets("infos").Cells(j, 37) End If Next j End sub
La combobox contient le nom de tous les onglets du fichier.
Mais en fait ma fonction main utilise un onglet à un moment donné. ce nom d'onglet, je l'ai mis dans la cellule A1 de la feuille infos. Et je souhaiterais qu'à l'ouverture, ma combobox soit par défaut sur ce nom d'onglet, mais que j'ai malgré tout l'accès aux autres choix de la combobox et que je puisse la consulter.