Ref Champ dans Module

Résolu
Gunshin82 Messages postés 37 Date d'inscription jeudi 22 mars 2007 Statut Membre Dernière intervention 10 décembre 2009 - 12 sept. 2007 à 23:18
Gunshin82 Messages postés 37 Date d'inscription jeudi 22 mars 2007 Statut Membre Dernière intervention 10 décembre 2009 - 7 nov. 2007 à 10:07
Bonjour à tous et toute,

Je suis en plein développement d'un mini soft pour charger des données de fichier text dans une base SQL. Pour ce faire, l'utilisateur devra choisir la période pour laquelle il veut charger ses données. Les valeurs qui se trouvera dans la combo Periode sera renseigner par mon code à partir de nom de dossier présent dans un répertoire.

Mon soucis est que je ne peux pas faire référence du tout au Combo Box Periode qui ce trouve sur mon formulaire principal... Il me marque comme quoi la variable est non déclarer, comment dois-je faire pour qu'il soit visible dans mon module...

Merci pour toute aide que vous pouvez m'apporter...

Voici mon code du module :



Module

ChargerNN





   Function Fetch_Periode()





      'Variable pour manipuler fichier texte






      Dim TxtChemin AsString = IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly.Location) & "\TEMP"





      Dim TxtRead As IO.StreamReader





      'Variable Chemin pour le chemin où ce trouve les répertoires et Dossier pour les répertoires qui






      'seront rajouté dans la combo box






      Dim Chemin, Dossier AsString





      'Def seras la valeur par défault du combo Periode






      Dim Def As Data





      'Aller chercher le chemin principal où ce trouve les sous dossiers dans le fichier texte





      TxtRead = New IO.StreamReader(TxtChemin & "Chemin.txt", System.Text.Encoding.Default)





      For x AsInteger = 1 To 2




         Chemin = TxtRead.ReadLine





      Next






      'Insérer les valeurs dans la combo Periode





      Dossier = Dir(Chemin, FileAttribute.Directory)





      While Dossier <> ""





         If IsNumeric(Dossier) And Len(Dossier) = 4 Then




            Periode.Items.Add("20" & Mid(Dossier, 3, 2) & Mid(Dossier, 1, 2))





         End
If






      End
While






      'Affecter la date MM/AAAA (M-1) à D





      Def = System.DateTime.Now.Month - 1 & "/" & System.DateTime.Now.Year





   End



Function





End



Module

24 réponses

NHenry Messages postés 15114 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 4 mai 2024 159
7 nov. 2007 à 09:17
Bonjour

Non, c'est à toi de le déclarer le MdlCommun

Balèse la personne qui a pensé au pansement à penser (ou à panser, pensée).
VB (6, .NET1&2), C++, C#.Net1
Mon site
0
Gunshin82 Messages postés 37 Date d'inscription jeudi 22 mars 2007 Statut Membre Dernière intervention 10 décembre 2009
7 nov. 2007 à 09:49
D'accord, il faut que je le déclare... mais je le déclare en tant que quoi?

Voici mon code test que j'utilise maintenant :

Code principal :

Public

Class Form1

   Inherits System.Windows.Forms.Form   #

Region " Code généré par le Concepteur Windows Form "

   Public
Sub
New()

      MyBase.New()

      'Cet appel est requis par le Concepteur Windows Form.      InitializeComponent()

      'Ajoutez une initialisation quelconque après l'appel InitializeComponent()

   End
Sub

   'La méthode substituée Dispose du formulaire pour nettoyer la liste des composants.

   Protected
Overloads
Overrides
Sub Dispose(
ByVal disposing
As
Boolean)

      If disposing
Then

         If
Not (components
Is
Nothing)
Then            components.Dispose()

         End
If

      End
If

      MyBase.Dispose(disposing)

   
End
Sub

   'Requis par le Concepteur Windows Form

   Private components
As System.ComponentModel.IContainer

      'REMARQUE : la procédure suivante est requise par le Concepteur Windows Form

      'Elle peut être modifiée en utilisant le Concepteur Windows Form.

      'Ne la modifiez pas en utilisant l'éditeur de code.

      Friend
WithEvents Button1
As System.Windows.Forms.Button

      Friend
WithEvents ComboBox1
As System.Windows.Forms.ComboBox      <System.Diagnostics.DebuggerStepThrough()>

Private
Sub InitializeComponent()
      Me

.Button1 =
New System.Windows.Forms.Button
      Me

.ComboBox1 =
New System.Windows.Forms.ComboBox
      Me

.SuspendLayout()
      '

      'Button1

      '

      Me

.Button1.Location =
New System.Drawing.Point(56, 144)
      Me

.Button1.Name = "Button1"
      Me

.Button1.Size =
New System.Drawing.Size(144, 32)
      Me

.Button1.TabIndex = 0
      Me

.Button1.Text = "Button1"
      '

      'ComboBox1

      '

      Me

.ComboBox1.Location =
New System.Drawing.Point(56, 56)
      Me

.ComboBox1.Name = "ComboBox1"
      Me

.ComboBox1.Size =
New System.Drawing.Size(184, 21)
      Me

.ComboBox1.TabIndex = 1
      Me

.ComboBox1.Text = "ComboBox1"
      '

      'Form1

      '

      Me

.AutoScaleBaseSize =
New System.Drawing.Size(5, 13)
      Me

.ClientSize =
New System.Drawing.Size(292, 273)
      Me

.Controls.Add(
Me.ComboBox1)
      Me

.Controls.Add(
Me.Button1)
      Me

.Name = "Form1"
      Me

.Text = "Form1"
      Me

.ResumeLayout(
False)

   End
Sub
   
   #
End
Region

   Private
SubForm1_Load(
ByVal sender
AsSystem.Object,
ByVal e
AsSystem.EventArgs)
Handles
MyBase.Load      MdlCommun.myFrmMain =

Me   'Ici, il me marque non déclaré pour MdlCommun
      
      Test1()

   End
Sub

   Private
Sub Button1_Click(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles Button1.Click
      Test2()

   End
SubEnd

Class
Module :

Module

Module2

   Public
Sub Test1()      MdlCommun.MyFrmMain.ComboBox1.text = "Test1"   'et ici aussi, il me marque non déclaré pour MdlCommun    

   End
Sub   Public
SubTest2()

      MdlCommun.MyFrmMain.ComboBox1.text = "Test2"   'et ici aussi, il me marque non déclaré pour MdlCommun    

   End
SubEnd
Module

Most people would die sooner than think; in fact, they do.
-Bertrand Russell-
0
Gunshin82 Messages postés 37 Date d'inscription jeudi 22 mars 2007 Statut Membre Dernière intervention 10 décembre 2009
7 nov. 2007 à 09:52
merde... ca pêter toute ma syntaxe...

Most people would die sooner than think; in fact, they do.
-Bertrand Russell-
0
Gunshin82 Messages postés 37 Date d'inscription jeudi 22 mars 2007 Statut Membre Dernière intervention 10 décembre 2009
7 nov. 2007 à 10:07
My god it works, merci mille fois!!!!!!! et merci pour ta patience!

Most people would die sooner than think; in fact, they do.
-Bertrand Russell-
0
Rejoignez-nous