Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Valeur d'une liste dans la requête ADODB

VBA_dev_Anne_Marie

XLDnaute Occasionnel
Bonjour,

J'ai une liste déroulante avec des valeurs. Je voudrais cliquer dans cette liste et afficher la valeur correspondante via une requête ADODB dans une autre cellule.
Mon code pour passer la valeur de la liste dans une variable que je vais utiliser dans la requête est:

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address(0, 0) = "E15" Then
GET_GROUPE Split(Target.Value, " - ")(1)
End If
End Sub


J'ai mis Split(Target.Value, " - ")(1) car mes variables se presente comme LMM - 55C, KPCF - 5577 , je dois récupérer les caractères après le tiret. Ce code ne marche pas
 
Dernière édition:

laurent950

XLDnaute Barbatruc
Re,
Target c'est une variable Objet de Type Range (La valeur ou plage de valeur renvoyé)
On peut stocker le résultat dans une variable tableau comme l'exemple que j'ai posté
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim TabRes() As Variant
If Target.Value = [E15].Value Then
    ReDim TabRes(0 To UBound(Split([Target], ",")))
        For i = LBound(TabRes) To UBound(TabRes)
            TabRes(i) = Split(Split([Target], ",")(i), "-")(1)
        Next i
End If
MsgBox TabRes(0)
MsgBox TabRes(1)
End Sub
cdt
 

VBA_dev_Anne_Marie

XLDnaute Occasionnel
Merci, mais je ne comprends pas, comment, par la suite, je peux utiliser cette variable dans ma requête ADODB.
 

VBA_dev_Anne_Marie

XLDnaute Occasionnel
Voici mon code complet :
Module dans la feuille :

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim i As Integer
If Not Intersect(Target, Range("C6")) Is Nothing Then
Call CLICK_BTN_INFOS_CONTRAT
End If

Dim TabRes() As Variant
If Target.Value = [E15].Value Then
ReDim TabRes(0 To UBound(Split([Target], ",")))
For i = LBound(TabRes) To UBound(TabRes)
TabRes(i) = Split(Split([Target], ",")(i), "-")(1)
Next i
End If
MsgBox TabRes(0)
GET_GROUPE_GESTION_CIBLE TabRes(0)
End Sub
 

VBA_dev_Anne_Marie

XLDnaute Occasionnel
Peut-être j'ai omis une option dans le code
 

VBA_dev_Anne_Marie

XLDnaute Occasionnel
Je n'ai qu'un seul choix dans la liste, du coup je n'ai pas besoin de TabRes(1), n'est-ce pas ?
Merci
 

Discussions similaires

Réponses
1
Affichages
410
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…