Erreur sur macro, rrrrrrrr

yoyo69

XLDnaute Nouveau
Bonjour,

J'ai une macro dans Workbook open

Private Sub Workbook_Open()
If Range("a2") = "nouveau" Then
UserForm1.Show
End If
If Range("a2") = "" Then
UserForm2.Show
End If
End Sub


et dans Userform Initialize

Private Sub UserForm_Initialize()
With Sheets("POSTE 1")
TextBox1.Text = .Range("D1").Value
TextBox2.Text = .Range("L1").Value
TextBox6.Text = .Range("D1").Value
TextBox10.Text = .Range("L1).Value
End With
End Sub


UserForm1 (TexBox1 et TexBox2)
UserForm2 (TexBox6 et TexBox10)

Je ne comprends pas comment corriger l'erreur.

Merci Yoyo
 

Spitnolan08

XLDnaute Barbatruc
Re : Erreur sur macro, rrrrrrrr

Bonjour,

J'ai cassé ma boule de cristal hier soir!
Donc si j'ai bien compris... Pour que ça fonctionne tel quel il faut que tu crées 2 UF :
UserForm1 et UserForm2 avec chacun une procédure Initialize :

Pour le 1 :
Code:
Private Sub UserForm_Initialize()
With Sheets("POSTE 1")
    TextBox6.Text = .Range("D1").Value
    TextBox10.Text = .Range("L1).Value
End With
End Sub
Pour le 2 :
Code:
 Private Sub UserForm_Initialize()
With Sheets("POSTE 1")
    TextBox6.Text = .Range("D1").Value
    TextBox10.Text = .Range("L1).Value
End With
End Sub
Cordialement
 

yoyo69

XLDnaute Nouveau
Re : Erreur sur macro, rrrrrrrr

Re, désolé pour le manque de précisons, je pensais que simplement avec le code on comprenais le but rechercher et que l'erreur etait flagrante.

A l'ouverture du fichier 0000.xls, la Userform 1 s'ouvre en récupérant les infos de la feuille POSTE 1 cellule D1 et L1 et les affiche en Texbox 1 et 2, je click bouton creer et un "enregistrement-sous" se fait sous 0001.xls.
A l'ouverture du fichier 0001.xls, la Userform 1 ne s'ouvre plus mais la Userform 2 s'ouvre en récupérant les infos de la feuille POSTE 1 cellule B1 et L1 et les affiche en Texbox 6 et 10.

L'erreur vient bien des procédures Initialize, donc ça bug, mes infos ne sont pas transferer dans les Texbox, je n'y comprend rien comme d'hab. J'avais tout simplement :

Private Sub UserForm1_Initialize()
With Sheets("POSTE 1")
TextBox1.Text = .Range("D1").Value
TextBox2.Text = .Range("L1").Value
End With
End Sub

Private Sub UserForm2_Initialize()
With Sheets("POSTE 1")
TextBox6.Text = .Range("L1").Value
TextBox10.Text = .Range("B1").Value
End With
End Sub


mais excel pas comprendre moi,
 
Dernière édition:

yoyo69

XLDnaute Nouveau
Re : Erreur sur macro, rrrrrrrr

donc en résumé je cherche un code pour initialiser les userform 1 et 2 à un moment different et le code ci-dessous ne peut initiliser des TexBox d'une userform pas loader

Private Sub UserForm_Initialize()
With Sheets("POSTE 1")
TextBox1.Text = .Range("D1").Value
TextBox2.Text = .Range("L1").Value
TextBox6.Text = .Range("D1").Value
TextBox10.Text = .Range("L1).Value
End With
End Sub


merci
 

Excel_lent

XLDnaute Impliqué
Re : Erreur sur macro, rrrrrrrr

Salut à tous,

Une piste :eek:ù as-tu écrit ces deux macros ?
Elles doivent être chacune dans le code de l’Userform correspondant.

Il m'est difficile de donner la réponse avec des informations qui n'apparaissent pas dans mon marc de café (Spitnolan, j’ai perdu la boule) !

@+
 
Dernière édition:

yadla

XLDnaute Occasionnel
Re : Erreur sur macro, rrrrrrrr

Bonjour tout le monde,

Yoyo, quand tu as écrit tes fonctions "Initialize()" tu as mis UserForm1 et UserForm2...

Or, il ne faut pas les numéro. Et en plus tu le mets pas au bon endroit :p

Une astuce pour pas te tromper :
Double clic sur ton userform (1 ou 2) et dans la liste déroulante des fonctions choisit initialize.

Ton code sera où il faut ;)
 
Dernière édition:

Statistiques des forums

Discussions
312 239
Messages
2 086 494
Membres
103 234
dernier inscrit
matteo75654548