Textbox ne se souvient pas de la valeur dans le module

ouali

XLDnaute Junior
Bonjour le forum,

J'ai un petit soucis et ne trouve pas de réponse à mon problème. Je rentre une valeur dans un textbox d'un userform. J'aimerais pouvoir récupérer cette valeur dans un module. Or je n'arrive pas a la récupérer, la variable est toujours vide dans le module.

Mon textbox s'appelle Nbligne. Je les donc initialisé dans le module (pas ds l'userform) comme :
Public Nbligne as Integer

De plus, je ne ferme pas l'userform ms je le cache avec Me.Hide. Mais cela ne marche toujours pas. Je ne comprends pas car j'ai fait la même chose mais avec une checkbox et cela marche parfaitement. Il ne faut pas procéder de la même manière pour une checkbox et un textbox ??


Merci d'avance pour l'aide que vous pouvez m'apporter
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Textbox ne se souvient pas de la valeur dans le module

Bonjour Ouali, bonjour le forum,

Tu dis que tu as initialisé ta variable dans le module mais en fait tu l'as déclarée dans le module. Il te faut l'initialiser pour qu'elle prenne un autre valeur que zéro avec par exemple :
Code:
Nbligne = Range("A65536").End(xlUp).Row
Cela peut être fait à l'initialisation de l'UserForm ou à un autre moment mais si tu déclares ta variable comme publique et que tu l'initialises tu ne devrais plus avoir de problème. Même en fermant l'UserForm elle conservera sa valeur...
 

ouali

XLDnaute Junior
Re : Textbox ne se souvient pas de la valeur dans le module

Bonjour,

J'ai essayé de l'initialiser comme tu me le proposais ms ca ne change rien du tout malheureusement. Voici un bout de code, je ne peux pas envoyer le fichier il est trop important

Code de l'userform :

'Option Explicit
Sub USERFORM4_initialize()

Nbligne = 4

End Sub

Sub CommandButton1_Click()

Call mnemonique_champs
Call mnemonique_libelle
Me.Hide
End Sub

Où j'ai changé le nom du textbox par Nbligne

et ensuite le module ou j'utilise cette variable :

Public Nbligne As Integer

Sub adresseIEC104() ' permet de gérer et de remplir les adresse IEC104 pour tous les signaux sauf télémesure
ligne = 7
Dim N As Integer

If UserForm2.TSS.Value = True Then

Sheets("Saisie").Rows(L - 1).Select ' Selectionne la ligne a mettre en double
Sheets("Saisie").Rows(L - 1).Copy
For N = 0 To Nbligne - 1 ' copie Nbligne fois la 1ere ligne Nbligne : valeur entrée par l'utilisateur
Sheets("Saisie").Range("A" & L + N).Select
ActiveSheet.Paste
Next N

Do While Sheets("Adresse104").Range("B" & ligne).Font.Strikethrough = True ' si l'adresse est barré on va à la ligne suivante
ligne = ligne + 1
Loop

Sheets("Adresse104").Range("B" & ligne).Font.Strikethrough = True ' Barre l'adresse utilisé pour ce signal
Byte3 = Int(Sheets("Adresse104").Range("B" & ligne) / 256 ^ 2) ' Défini l'adresse en byte a partir du nombre entier
Byte4 = Int(Sheets("Adresse104").Range("B" & ligne) / 256)
Byte5 = Sheets("Adresse104").Range("B" & ligne) - (Byte4 * 256)

Sheets("Saisie").Range("CT" & L) = 0
Sheets("Saisie").Range("CU" & L) = Sheets("Saisie").Range("I2")
Sheets("Saisie").Range("CV" & L) = Byte3
Sheets("Saisie").Range("CW" & L) = Byte4
Sheets("Saisie").Range("CX" & L) = Byte5
Sheets("Saisie").Range("DD" & L) = Sheets("Saisie").Range("J2") ' met l'adresse IP

End If

End sub

J'espère que tu pourras m'aider avec le bout de code que j'ai mis

Merci d'avance
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Textbox ne se souvient pas de la valeur dans le module

Bonjour Ouali, bonjour le forum,


c'est ça qui m'inquiète :
Où j'ai changé le nom du textbox par Nbligne
Si j'ai bien compris tu a déclaré une variable :
Code:
Public Nbligne As Integer
et ensuite tu as renommé une textbox par Nbligne... Il doit y avoir confusion enre les deux. Je ne pense pas que renommer la textbox soit une bonne idée (enfin si c'est bien ce que j'ai compris).
je pense que tu aurais dû écrire :
Code:
Sub CommandButton1_Click()
[COLOR=red]Nbligne=TextBox1.Value 'à adapter avec le numéro de la textbox[/COLOR]
Call mnemonique_champs
Call mnemonique_libelle
Me.Hide
End Sub

Sinon difficile de t'aider d'avantage juste avec le code sans le fichier...
 

Statistiques des forums

Discussions
312 299
Messages
2 086 996
Membres
103 423
dernier inscrit
Guyom GIL