Bonjour à tous,
j'ai commencé a œuvré sur un fichier excel avec ruban personnalisé.
Malheureusement, je butte sur l'alimentation d'une combobox.
Mon probleme est que j'arrive à remplir ma combobox avec un critère de texte qui filtre mes lignes. Donc il me retient bien mes lignes mais elle garde les "blanc" des lignes qui ne correspondent pas aux critères
Enfin et le je ne sais même pas par où commencer je voudrais qu'une fois mon choix sélectionné dans ma combobox il m'exécute une action sur la ligne correspondant
voici le code customUI
Et le module VB :
Donc en colonne B, si le mot "non" est détecté il doit alimenté la combobox avec la valeur trouver en colonne F
je remercie tous ceux qui prendront le peine de me lire et de m'aider dans ma démarche.
j'ai commencé a œuvré sur un fichier excel avec ruban personnalisé.
Malheureusement, je butte sur l'alimentation d'une combobox.
Mon probleme est que j'arrive à remplir ma combobox avec un critère de texte qui filtre mes lignes. Donc il me retient bien mes lignes mais elle garde les "blanc" des lignes qui ne correspondent pas aux critères
Enfin et le je ne sais même pas par où commencer je voudrais qu'une fois mon choix sélectionné dans ma combobox il m'exécute une action sur la ligne correspondant
voici le code customUI
Code:
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" onLoad="RubanCharge">
<ribbon startFromScratch="false">
<tabs>
<tab id="OngletPerso" label=" PRETS ENTRE SECTION / RESERVATIONS " insertBeforeMso="TabHome" visible="true">
<group id="GR04" label="réservation non disponible">
<!-- getItemCount="NbItemCombo" va définir le nombre d'items dans la combobox. -->
<!-- getItemLabel="ComboLabel" permet d'alimenter la combobox. -->
<!-- invalidateContentOnDrop="true" permet la mise à jour automatique du contrôle. -->
<comboBox id="Combo1" label="Choix : " getItemCount="NbItemCombo" getItemLabel="ComboLabel"
invalidateContentOnDrop="true" />
</group>
</tab>
</tabs>
</ribbon>
</customUI>
Et le module VB :
VB:
Sub NbItemCombo(control As IRibbonControl, ByRef returnedVal)
'Définit le nombre d'éléments dans la combobox
'Récupère le nombre de données dans la colonne A.
returnedVal = Feuil1.Range("F65536").End(xlUp).Row
End Sub
'Callback for Combo1 getItemLabel
'Index est défini par la valeur saisie dans la fonction de rappel NbItemCombo
Sub ComboLabel(control As IRibbonControl, index As Integer, ByRef returnedVal)
If Feuil1.Range("F65536").End(xlUp).Row = 0 Then Exit Sub
'Alimente le Combobox à partir des données de la plage de cellules
If Feuil1.Cells(index + 1, 2) Like "*non*" Then
returnedVal = Feuil1.Cells(index + 1, 6)
End If
End Sub
Donc en colonne B, si le mot "non" est détecté il doit alimenté la combobox avec la valeur trouver en colonne F
je remercie tous ceux qui prendront le peine de me lire et de m'aider dans ma démarche.