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

appel de variable dans une fonction...

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

romainchu78

XLDnaute Occasionnel
bonjour a tous,
jai un petit soucis avec une variable et une fonction.
un bouton VB code en Public Sub CommandButton4_Click() lance un openfilename et stock le titre du fichier dans une variable X prealablement declaree en public variant.
je m'assure a la fin de la procedure bouton "Public Sub CommandButton4_Click()" que ma variable est pleine avec un msgbox. c'est le cas tous va bien.

ensuite je suis cense utilise cette aviable dans une autre procedure "Sub ImportDonnéesCAB1()" qui fera appel a la variable X (qui je le rappel contient le titre de mon fichier), pour ouvrir le fichier avec un opentext. mais la, la variable x est vide.
je ne comprend pas car la variable x a ete declare en public !!

Faut-il utiliser une fonction a la place de la procedure ?
Ces notions sont flou pour moi, quelqu'un peut-il m'aider la dessus.
merci
 
Re : appel de variable dans une fonction...

Bonjour
Tes procédures s'enchainent-elles ?
Si tu en utilises une associée à un bouton puis plus tard une autre associée à un autre bouton, cela ne peut par marcher.
Qu'en-est-il ?
 
Re : appel de variable dans une fonction...

Et bien ecoute c'est un truc comme cela, je rexplique:
jai un code dans un bouton VB qui lance un openfilename et stock le titre d'un fichier TXT ouvert par l'utilisateur dans une variable X prealablement declaree en public variant.
je m'assure a la fin de la procedure de ce bouton que ma variable est pleine avec un msgbox, c'est le cas tous va bien.

Ensuite je suis cense utilise cette variable dans une autre procedure "Sub ImportDonnéesCAB1()" qui fera appel a la variable X (qui je le rappel contient le titre de mon fichier), pour ouvrir le fichier avec un opentext. Mais la, la variable x est vide. Cette procedure "Sub ImportDonnéesCAB1()" est appelee grace a un autre bouton.

Je resume: A laide d'un 1er bouton je genere une variable X type variant public qui sera rempli d'un nom.
un peut plus tard, un autre bouton appel une procedure qui fait appel a la variable x.
Le probleme: la variable X est vide dans la procedure.

Selon ton point de vue, quelle serait la solution?
Merci pour l'interet que tu porte a mon probleme.
 
Re : appel de variable dans une fonction...

jai resolu le probleme en mettant directement la procedure dans le deuxieme bouton histoire pour voir. Les deux boutons etant dans la meme feuille de code, avec les variables et les fonction sdeclarees en public. Par contre a ma grande surprise, un autre probleme survient...decidement...Voici le moreceau de code:


'Copiage du contenu du fichier text ouvert dans un nouveau workbook
Workbooks.OpenText Filename:=FileToOpenCAB1 _
, Origin:=xlWindows, StartRow:=1, DataType:=xlDelimited, TextQualifier _
:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:= _
False, Comma:=False, Space:=False, Other:=True, OtherChar:="|", _
FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), Array(7, 1), Array(8, 1), Array(9, 1))

Set wbk2 = ActiveWorkbook
NomFichierLongCAB1 = ActiveWorkbook.Name 'Copiage du nom complet du titre du 2eme workbook dans une variable
NomFichierCourtCAB1 = Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) 'Copiage du nom sans extension du titre du 2eme workbook dans une variable

' le programme ne fonctionne plus a partir de la, il ne prend pas en compte la selection des 4 premieres lignes. je ne sais pas s'il reactive le deuxieme workbook.

wbk2.Activate 'On reactive le 2eme workbook
Rows("1:4").select
Selection.Delete Shift:=xlUp
Cells.Select
Selection.Copy


Si quelqu'un a une idee, je suis preneure...
 
Re : appel de variable dans une fonction...

Salut romainchu78
bonjour Pascal
bonjour le Forum

Effectivement Pascal, c'est tellement plus simple avec un fichier ou même un extrait lol 😀
bonne journée
 
Re : appel de variable dans une fonction...

RE

Merci pour le soutien CHTI

Ce qui m'enerve le plus c'est qu'hier matin je demande le fichier pour voir aucune réponse de la journée et là on se ramène en disant "bon bah j'ai fait autrement" (supposé j'avais pas besoin de vous) " mais j'ai un autre problème".

Bah moi je suis pas grouillot

Bonne journée à toi Jean-Marie
 
Re : appel de variable dans une fonction...

Bonjour a vous tous,
Pourquoi tant d'enervement Pascal ??? J'ai travaille comme un arrache pied pour essayer de resoudre le probleme (je ne suis pas passif).
De plus, je cherchais plus a savoir comment fonctionne les procedures et les fonctions...et pas forcement vous faire perdre votre temps a chercher un bout de code dans plusieurs de DIZAINES de pages de codes (mon code est une vraie usine a gaz, donc jai juge bon de selectionner la partie du code qui pouvait contenir l'erreur!).
Alors desole de "t'avoir fais perdre ton temps" ! et merci quant meme d'avoir essaye.
Plus de sang froid serait souhaitable...
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
430
D
Réponses
4
Affichages
433
DidPouAxi
D
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…