VBA_dev_Anne_Marie
XLDnaute Occasionnel
Bonjour,
Je récupère mes variable argstring3 et argstring4 via 2 liste déroulante (en cliquant sur ces liste) : argString3 = Me.Liste_Mandataire.Value , argString4 = Me.Liste_Depositaire.Value.
Les variables argString3 et argString4 ont bien des valeurs, j'ai testé.
Le code pour les récupérer se trouve dans :
Ensuite, je voudrais lancer une requête qui crée une liste déroulante sur la feuille 4. Ce code se trouve dans :
mais malheureusement ce code ne marche pas, car je ne sais pas comment écrire l'appel à ce code sur la feuille 1 : Call Sub_Liste(argString3,argString4) ne marche pas, la ligne se met en rouge.
Voici le code sur la feuille 4 :
Merci beaucoup pour votre aide !
Je récupère mes variable argstring3 et argstring4 via 2 liste déroulante (en cliquant sur ces liste) : argString3 = Me.Liste_Mandataire.Value , argString4 = Me.Liste_Depositaire.Value.
Les variables argString3 et argString4 ont bien des valeurs, j'ai testé.
Le code pour les récupérer se trouve dans :
Ensuite, je voudrais lancer une requête qui crée une liste déroulante sur la feuille 4. Ce code se trouve dans :
mais malheureusement ce code ne marche pas, car je ne sais pas comment écrire l'appel à ce code sur la feuille 1 : Call Sub_Liste(argString3,argString4) ne marche pas, la ligne se met en rouge.
VB:
Public Sub Liste_UT()
CONTRAT_VALID = False
Dim RECSET As New ADODB.Recordset
Call CONNEXION_PEGASE("xxxx", "xxx", "xxx")
RECSET.Open "select distinct (rga.CD_RGA||' - '||rga.LB_LONG) as UT_RGA from DB_RGA rga, DB_DOSSIER sousc, DB_CTRAT_SUPPORT db_ctrat," & _
" DB_PROTOCOLE proto, DB_TIERS tiers1," & _
" DB_PERSONNE personne1," & _
" DB_PORTEFEUILLE portef, DB_TIERS tiers2, DB_PERSONNE personne2," & _
" DB_TIERS tiers3, DB_PERSONNE personne3" & _
" where personne2.S_RAISONSOC='" & argString4 & "' and personne3.S_RAISONSOC='" & argString3 & "' and sousc.CD_DOSSIER in ('CHOP','CHOC') and sousc.LP_ETAT_DOSS not in ('ANNUL','A30','CLOSE')" & _
" and sousc.IS_DOSSIER=db_ctrat.IS_DOSSIER" & _
" and sousc.is_protocole=proto.is_protocole" & _
" and sousc.is_tiers=tiers1.is_tiers" & _
" and tiers1.is_personne=personne1.is_personne" & _
" and (db_ctrat.ID_FAMILLE_PORTEF||' '||db_ctrat.ID_PORTEFEUILLE)=(portef.ID_FAMILLE_PORTEF||' '||portef.ID_PORTEFEUILLE)" & _
" and portef.is_tiers_depositaire=tiers2.IS_TIERS" & _
" and tiers2.is_personne=personne2.IS_PERSONNE" & _
" and sousc.IS_TIERS=tiers3.IS_TIERS" & _
" and tiers3.is_personne=personne3.is_personne" & _
" and db_ctrat.IS_RGA=rga.IS_RGA", cnn_Pegase, adOpenDynamic, adLockBatchOptimistic
While Not RECSET.EOF
Worksheets(4).Liste_UT_RGA.AddItem RECSET!UT_RGA
RECSET.MoveNext
Wend
RECSET.Close
Call DECONNEXION_PEGASE
End Sub
Voici le code sur la feuille 4 :
VB:
Private Sub Liste_UT_RGA_Change()
If Not Worksheets(4).Liste_UT_RGA.MatchFound And Worksheets(4).Liste_UT_RGA <> "" Then
MsgBox "Saisie impossible, cet UT cible n'existe pas ", , "Contrôle"
Worksheets(4).Liste_UT_RGA = ""
Else
Worksheets(4).Cells(5, 25) = Worksheets(4).Liste_UT_RGA
Liste_UT_RGA.BackColor = RGB(255, 0, 0)
End If
End Sub
Merci beaucoup pour votre aide !
Dernière édition: