CONSTANTE probleme [Résolu]

Signaler
Messages postés
113
Date d'inscription
samedi 11 novembre 2000
Statut
Membre
Dernière intervention
16 août 2008
-
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
-
Bonjour,
Voila mon petit soucis que je n'arrive pas à regler tt seul :
dans ma form j'aimerais fait cela :

(general)
Option Explicit
dim bidul,machin as string
bidul= ouverture et recherche du contenus precisé d'un .ini
machin=ouverture et recherche du contenus precisé d'un .ini
Private Const VendorID = bidul
Private Const ProductID = machin

si j'applique ce code j'ai l'erreur INVALIDE OUTSIDE PROCEDURE

19 réponses

Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
43
oui.... suivre la syntaxe "normale"

pas besoin de constante
et fais-toi une routine

Option Explicit
Private VendorID As String
Private ProductID As String

Private Sub InitVars()
    VendorID = "ouverture et recherche du
contenus precisé d'un .ini"
    ProductID = "ouverture et recherche du
contenus precisé d'un .ini"
End Sub

<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp  
Messages postés
1835
Date d'inscription
vendredi 13 mai 2005
Statut
Membre
Dernière intervention
20 novembre 2013
9
Salut,

jamais vu ce message mais il semblerai que tu ai ecrit du code endehors d'une sub ou fonction ou autre
Messages postés
113
Date d'inscription
samedi 11 novembre 2000
Statut
Membre
Dernière intervention
16 août 2008

oui tout a fait mais le soucis est que je veus determiner
Private Const VendorID = bidul
Private Const ProductID = machin
qui ce trouve dans le general de ma form
Messages postés
1835
Date d'inscription
vendredi 13 mai 2005
Statut
Membre
Dernière intervention
20 novembre 2013
9
...

bidul et machin sont issu de fonction ?
Messages postés
1402
Date d'inscription
mardi 1 mai 2007
Statut
Membre
Dernière intervention
7 octobre 2012
5
Salut,
les déclarations des variables ou constantes locales doivent être en premier,et avant toute procédure...,

(general)
Option Explicit
dim bidul,machin as string
Private Const VendorID = bidul
Private Const ProductID = machin

bidul= ouverture et recherche du contenus precisé d'un .ini
machin=ouverture et recherche du contenus precisé d'un .ini

<hr />... Y'en a même qui disent qu'ils l'ont vu voler.
Messages postés
1402
Date d'inscription
mardi 1 mai 2007
Statut
Membre
Dernière intervention
7 octobre 2012
5
et corriges cette ligne
dim bidul as string ,machin as string

<hr />... Y'en a même qui disent qu'ils l'ont vu voler.
Messages postés
113
Date d'inscription
samedi 11 novembre 2000
Statut
Membre
Dernière intervention
16 août 2008

merci, mais toujours cette erreur INVALID OUTSIDE PROCEDUR
Messages postés
1402
Date d'inscription
mardi 1 mai 2007
Statut
Membre
Dernière intervention
7 octobre 2012
5
d' autres part les constantes doivent être initialisées avec des valeurs fixes et non pas par le contenu d' une variable, qui ,plus est, n' est pas encore initilisée.... Y'en a même qui disent qu'ils l'ont vu voler.
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
43
salut

1) une constante est une valeur qui doit être connue au moment de la compilation, ce qui n'est pas le cas ici
2) une attribution de variable ne peut se faire que dans une routine (PROCEDURE), inexistante ici

voici une autre manière pour reproduire ton bug :

Option Explicit
Dim sVar As String

Private Sub Form_Load()
'   init de sVar dans procédure Form_Load
    sVar = "bonjour"
End Sub

'   init de sVar
dans le vent....
    sVar = "bonjour"

<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp  
Messages postés
113
Date d'inscription
samedi 11 novembre 2000
Statut
Membre
Dernière intervention
16 août 2008

ok y as t il une solution ?
Messages postés
1402
Date d'inscription
mardi 1 mai 2007
Statut
Membre
Dernière intervention
7 octobre 2012
5
dis nous plutôt à quoi ça te sert les constantes
VendorID et ProductID  ?

<hr />... Y'en a même qui disent qu'ils l'ont vu voler.
Messages postés
113
Date d'inscription
samedi 11 novembre 2000
Statut
Membre
Dernière intervention
16 août 2008

Merci PCPT ca marche impect et merci aussi à tous les autres pour votre aide.
Messages postés
113
Date d'inscription
samedi 11 novembre 2000
Statut
Membre
Dernière intervention
16 août 2008

tiens vu que j'ai des pro sous la main j'en profite pour une deuxiéme question.
Je possede un controle label que j'utilise pour activer une procedure grace a la methode change.Ce label reçois des bits de telecommande donc si j'appuie sur une touche plusieur serie de chiffre apparaisse dans le label avant d'etre fixe.
Pour le moment je me suis apercu que le chiffre 65 apparaissait qu'une fois et c'est ce qui m'aide a lancer ma procedure:
Private Sub Rcv3_Change()
If InStr(BufferIn(5), ("65")) = 1 Then
call procedure
Mais voila il n'est pas sur qu'avec d'autre telecommande ce chiffre apparaisse donc auriez vous une autre solution a mon probleme ?
Messages postés
1835
Date d'inscription
vendredi 13 mai 2005
Statut
Membre
Dernière intervention
20 novembre 2013
9
...

pense alors à valider la réponse de PCPT
Messages postés
1835
Date d'inscription
vendredi 13 mai 2005
Statut
Membre
Dernière intervention
20 novembre 2013
9
...
il est preferable pour "le bien de la communauté" de ne poser qu'une question par poste donc pour ta deuxieme question un nouveau poste serait le bien venu.

A+
Messages postés
113
Date d'inscription
samedi 11 novembre 2000
Statut
Membre
Dernière intervention
16 août 2008

OK merci
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
43
tant qu'on est dans le "le bien de la communauté", n'hésite pas non plus à aller faire un tour sur tes dernières questions
http://www.vbfrance.com/infomsgm_GHGFSJD_473018.aspx

çà serait pas mal d'y donner suite et de valider si c'est résolu....

article 11 :

On pense à laisser un petit message lorsqu'un problème est résolu et à cliquer sur le bouton «réponse acceptée».
Ce
bouton sert à valider la ou les réponses qui conviennent au problème
indiqué. Il sert aussi de remerciement pour les membres qui ont apporté
la/les bonnes réponses. Enfin une réponse validée est bien plus facile
à retrouver lors de recherches sur le forum. N'oubliez pas qu'un forum
ne sert pas qu'à poser sa question!

bête de le mettre en tant que règle hein, çà devrait être inné :)
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp  
Messages postés
113
Date d'inscription
samedi 11 novembre 2000
Statut
Membre
Dernière intervention
16 août 2008

Tout a fait d'accord sauf qu'il fallait le savoir pour la validation de la reponsse, il me semble aussi t'avoir remercié pour ton aide dans un post
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
43
"il fallait le savoir", logiquement tu as validé la charte lors de ton inscrition, donc tu l'as forcément lue, comme tout le monde ;)

mais peu importe, çà fait un petit rappel pour tous ;)
bonne soirée