Help Me (VBA)

Signaler
Messages postés
3
Date d'inscription
mercredi 21 novembre 2007
Statut
Membre
Dernière intervention
17 juillet 2008
-
Messages postés
2065
Date d'inscription
lundi 11 avril 2005
Statut
Membre
Dernière intervention
14 mars 2016
-
Bonjour all,





Voilà je suis apprenti en BTS IRIS, et j'ai un problème de compréhention sur une base de données à mon taff.
Je vous sollicite car VBA, je conné pas (il préfère qu'on plonge dans le C et C++, éducation national...) et je comprend pas tellement un code (sur click) d'un bouton.
Donc mon souci c'est un formulaire (F_RGP_Planning) un planning ou sur celui-ci un bouton permet d'ouvrir un sous-formulaire.

Private Sub Commande155_Click()
On Error GoTo Err_Commande155_Click


    Dim stDocName As String
    Dim stLinkCriteria As String


    stDocName = "SF_Check_Comparaison"
   
    stLinkCriteria = "[N°OF]=" & Me![IDLIGNE_CDE]
    DoCmd.OpenForm stDocName, , , stLinkCriteria


Exit_Commande155_Click:
    Exit Sub


Err_Commande155_Click:
    MsgBox Err.Description
    Resume Exit_Commande155_Click
   
End Sub

'  SF_Check_Comparaison = sous-formulaire à ouvrir
'  N°OF et IDLIGNE_CDE = correspond à un numéro d'ordre de fabrication logiquement identique
'  IDLIGNE_CDE = champ N°OF sur le planning
'  N°OF = champ N° OF sur le sous-formulaire contrôle d'OF

Mon problème est que le formulaire s'ouvre mais vide alors qu'il devrait afficher la gamme correspondant au N°OF.
Pouvez vous m'expliquer brievement cette ligne:

    stLinkCriteria = "[N°OF]=" & Me![IDLIGNE_CDE]

En vous remerciants
Have a good day.
tAsMo.



Tell me nOt it is nOt True?

2 réponses

Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
41
salut,

comme c'est écrit : stLinkCriteria = "[N°OF]=" & Me![IDLIGNE_CDE]
la variable chaîne stLinkCriteria va recevoir la chaîne [N°OF], suivie du signe = sous forme de chaine, suivie de la valeur de l'objet (surement une txtbox) IDLIGNE_CDE

le problème vient surement du début, à savoir que  N°OF étant entre quotes, c'est une chaîne et non aussi un objet
je ne fais pas de VBA.....
çà serait peut-être :
stLinkCriteria = SF_Check_Comparaison![N°OF] & "=" & Me![IDLIGNE_CDE]

++
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Messages postés
2065
Date d'inscription
lundi 11 avril 2005
Statut
Membre
Dernière intervention
14 mars 2016
10
Bonjour,

Difficile effectivement d'analysé le code, assez obscure... Je suis du même avis de PCPT, le problème se situe sur les deux lignes :


    stLinkCriteria = "[N°OF]=" & Me![IDLIGNE_CDE]
    DoCmd.OpenForm stDocName, , , stLinkCriteria

Plusieurs choses : DoCmd n'est pas une fonction native du VBA, mais une fonction programmé. Donc, il faudrait analyser cette dernière pour savoir quelle forme stLinkCriteria doit recevoir. Puis, donc voir si stLinkCriteria, est correct.

Pour stLinkCriteria : ![IDLIGNE_CDE] me fait penser à une référence nommée. Mais ce qui m'interpelle le plus c'est "Me"... car normalement stLinkCriteria doit être une String pour le nom d'une feuille, or ici "Me" semble être utilisé comme le mot clé "Me" du VB... ce qui aurait un sens si on veut faire référence à la feuille active, mais faux en terme de programmation...

Amicalement,
Us.