XL 2013 Afficher valeurs jusqu'à la dernière cellule d'une colonne dans ComboBox

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 !

Claggan

XLDnaute Nouveau
Bonjour,

J'aurais besoin de vos lumières pour mon problème, j'ai un fichier dans lequel une personne demande, à l'aide d'un formulaire, une intervention pour tel ou tel problème qu'il rencontre dans son travail.
Les interventions sont alors renseignées automatiquement, après envoi du formulaire, dans le fichier et un numéro d'intervention se créé en fonction de l'indice de la ligne créée.

J'aimerais, au travers d'un deuxième formulaire appelé "envoyer", permettre à une personne de sélectionner le n° d'intervention de son choix dans un Combobox1 et le destinataire dans le Combobox2 (pour cette partie j'ai déjà un module avec envoi de mail donc pas de soucis).

Le principal obstacle est d'arriver à afficher dans la liste du Combobox1, les numéros des interventions déjà renseignées. Je voudrais donc arriver à écrire Combobox1.List () = Feuil1.[A5: dernière ligne non vide de la colonne A].

Voici le code que j'ai tapé mais qui visiblement bloque au niveau de la ligne 6 :
VB:
Sub envoi()

With envoyer
Dim lig As Long
      lig = Range("A" & Rows.Count).End(xlUp).Row
.ComboBox1.List() = Feuil1.[A5:lig].Value
.ComboBox2.List() = Feuil3.[H2:H11].Value
.Show
End With
End Sub

Si vous avez des pistes je suis preneur !

Merci d'avance
 
Bonjour à vous,

Malheureusement aucune de vos deux propositions ne fonctionne :/

En cliquant sur le bouton d’exécution de la macro, j'ai le message "Erreur d'exécution '9' : L'indice n'appartient pas à la sélection"
Et en passant sur la ligne en surbrillance, j'ai le message ".Combobox1.list()=Null"

Le fait que les sources de la combobox1 et de la combobox2 soient sur deux feuilles différentes ne change rien ?

Cordialement
 
En effet c'est là qu'il y avait le problème ... la Feuil1 s'appelle "Liste", j'ai donc remplacé et la macro fonctionne, merci ! Par contre dans la Combobox1 il y a des cellules vides, comment faire pour n'afficher que les numéros ?
Je pense qu'il peut y avoir un souci avec la façon dont les lignes s'incrémentent et la façon dont la macro vérifie la dernière ligne :
Dans ma Feuil1 ("Liste"), j'ai une formule dans les cellules en colonne A : "=SI(ESTVIDE(B5);"";LIGNE(B5)-4)".

Est-ce que la macro considère "" comme étant une valeur ? Dans ce cas il va falloir que je trouve un moyen d'incrémenter autrement.

Cordialement
 
bonjour a tous
ComboBox1.RowSource = "Feuil1!A5:A" & lig NO, NINE, NON,pas du tout,rien, absolument pas ,etc.....

ComboBox1.list = sheets("Liste").range("A5:A" & lig ).value

burk rowsource burk !!!

rows source on l'utilise pour une plage fixe!!!, pour une plage dynamique ou dimentionnée on utilise ".list=laPlageDeCellule.value"
 
Bonjour.
Moi, s'il ne peut pas y avoir de tableau à références structurées couvrant la plage, j'aurais mis :
VB:
Me.ComboBox1.List = Feuil1.[A5].Resize(Feuil1.[A1000000].End(xlUp).Row - 4).Value
Feuil1 étant supposé le nom de l'objet Worksheet représentant la feuille concernée, quel que soit son nom Excel.
 
- 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

Discussions similaires

Retour