Envoi de données dans deux feuilles
Bonjour le Forum,
j'aimerai lorsque le bouton "Enregistrer" de mon UserForm2 est enclenché, que les données soient inscrites dans la feuil2 (Masque) mais aussi simultanément en feuil3(Suivi) .
Pour l'enregistrement dans la feuille "Masque" pas de souci, ça fonctionne, voici le code :
Private Sub CommandButton3_Click()
' Enregistrer
Dim I As Byte
Dim Place
Place = Array("D5", "G5", "H5", "J5", "K5", "L5", "M5", "P5")
With Sheets("Masque")
For I = 0 To UBound(Place)
.Range(Place(I)) = Me.Controls("TextBox" & I + 1)
Next I
.Range("D14") = Me.ComboBox12
.Range("F20") = Me.DTPicker3.Value
.Range("H30") = Me.DTPicker2.Value
.Range("H32") = Me.ComboBox9
.Range("H34") = Me.ComboBox8
.Range("D25") = Me.TextBox17
.Range("D48") = Me.TextBox18
.Range("O18") = Me.ComboBox11
.Range("O19") = Me.ComboBox13
.Range("O20") = Me.ComboBox14
.Range("D25") = Me.TextBox17
.Range("F19") = Me.DTPicker1
.Range("D69") = Me.TextBox19
.Range("I14") = Me.TextBox13
For I = 0 To Me.ListBox1.ListCount - 1
If Me.ListBox1.Selected(I) = True Then
.Range("D40") = .Range("D40") & " " & Me.ListBox1.List(I)
End If
Next I
End With
End SubComment modifier ou ajouter du code pour enregistrer les saisies afin qu'elles s'inscrivent dans la première ligne vide de la feuil3(Suivi) ?
Je ne dois transférer dans cette feuille que les :
DTPicker1 en colonne "B"
ComboBox8 en colonne "C"
ComboBox12 en colonne "D"
ListBox1 en colonne "E"
ComboBox5 en colonne "F"
TextBox20 en colonne "G"
TextBox19 en colonne "H"
Merci pour l'aide que vous pourrez m'apporter
Licaon
Bonjour
Une idée
Private Sub CommandButton3_Click()
' Enregistrer
Dim I As Byte
Dim Place
Dim Lg As Long
Place = Array("D5", "G5", "H5", "J5", "K5", "L5", "M5", "P5")
With Sheets("Masque")
For I = 0 To UBound(Place)
.Range(Place(I)) = Me.Controls("TextBox" & I + 1)
Next I
.Range("D14") = Me.ComboBox12
.Range("F20") = Me.DTPicker3.Value
.Range("H30") = Me.DTPicker2.Value
.Range("H32") = Me.ComboBox9
.Range("H34") = Me.ComboBox8
.Range("D25") = Me.TextBox17
.Range("D48") = Me.TextBox18
.Range("O18") = Me.ComboBox11
.Range("O19") = Me.ComboBox13
.Range("O20") = Me.ComboBox14
.Range("D25") = Me.TextBox17
.Range("F19") = Me.DTPicker1
.Range("D69") = Me.TextBox19
.Range("I14") = Me.TextBox13
For I = 0 To Me.ListBox1.ListCount - 1
If Me.ListBox1.Selected(I) = True Then
.Range("D40") = .Range("D40") & " " & Me.ListBox1.List(I)
End If
Next I
End With
With Sheets("suivi")
Lg = Range("B65536").End(xlUp).Row + 1
.Range("B" & Lg) = Me.DTPicker1.Value
.Range("C" & Lg) = Me.ComboBox8
.Range("D" & Lg) = Me.ComboBox12
.Range("E" & Lg) = Sheets("Masque").Range("D40")
.Range("F" & Lg) = Me.ComboBox5
.Range("G" & Lg) = Me.TextBox20
.Range("H" & Lg) = Me.TextBox19
End With
End SubCes items se rangent bien dans la bonne colonne : DTPicker1 , ComboBox8 et ComboBox5 , mais pas dans la première cellule de la première ligne vide.
.Range("B" & Lg) = Me.DTPicker1.Value
.Range("C" & Lg) = Me.ComboBox8
.Range("F" & Lg) = Me.ComboBox5
Par contre pas d'inscription de :
.Range("D" & Lg) = Me.ComboBox12
.Range("G" & Lg) = Me.TextBox20
.Range("H" & Lg) = Me.TextBox19
Cette ligne est en attente, je n'ai pas résolu une concaténation :
.Range("E" & Lg) = Sheets("Masque").Range("D40")
A te lire
Licaon
Bonsoir
mais pas dans la première cellule de la première ligne vide.
Il se rangent où ?
Par contre pas d'inscription de :
Bizarre autant qu'étrange ?
Ils s'inscrivent bien dans la page "Masques" ?
Cette ligne est en attente, je n'ai pas résolu une concaténation :
?????
A suivre
Bonne nuit
Bonjour Banzaï, bonjour le forum,
Je reprends le fil après quelques soucis de santé.
Lors de l'enregistrement, tout se range bien dans la feuille "Masque", mais la feuille "Suivi" c'est en ligne 2, et non pas sur la première ligne vide de la colonne "B".
En verrouillant la feuille, le débogage intervient et met en surbrillance cette ligne de code :
.Range("B" & Lg) = Me.DTPicker1.Value
A tâtons j'ai tenté de modifier le code sans succès.
Merci du coup de pouce.
Licaon
Bonjour
Désolé
Une erreur s'est glissée dans le code (Oh zut alors
Il manque le point (.) dans cette ligne
Lg = .Range("B65536").End(xlUp).Row + 1
Remplaces la fin de la macro
Private Sub CommandButton3_Click()
' Enregistrer
Dim I As Byte
Dim Place
Dim Lg As Long
Place = Array("D5", "G5", "H5", "J5", "K5", "L5", "M5", "P5")
With Sheets("Masque")
For I = 0 To UBound(Place)
.Range(Place(I)) = Me.Controls("TextBox" & I + 1)
Next I
.Range("D14") = Me.ComboBox12
.Range("F20") = Me.DTPicker3.Value
.Range("H30") = Me.DTPicker2.Value
.Range("H32") = Me.ComboBox9
.Range("H34") = Me.ComboBox8
.Range("D25") = Me.TextBox17
.Range("D48") = Me.TextBox18
.Range("O18") = Me.ComboBox11
.Range("O19") = Me.ComboBox13
.Range("O20") = Me.ComboBox14
.Range("D25") = Me.TextBox17
.Range("F19") = Me.DTPicker1
.Range("D69") = Me.TextBox19
.Range("I14") = Me.TextBox13
For I = 0 To Me.ListBox1.ListCount - 1
If Me.ListBox1.Selected(I) = True Then
.Range("D40") = .Range("D40") & " " & Me.ListBox1.List(I)
End If
Next I
End With
With Sheets("suivi")
Lg = .Range("B65536").End(xlUp).Row + 1
.Range("B" & Lg) = Me.DTPicker1.Value
.Range("C" & Lg) = Me.ComboBox8
.Range("D" & Lg) = Me.ComboBox12
.Range("E" & Lg) = Sheets("Masque").Range("D40")
.Range("F" & Lg) = Me.ComboBox5
.Range("G" & Lg) = Me.TextBox20
.Range("H" & Lg) = Me.TextBox19
End With
UserForm2.Hide
UserForm2.Show
End SubBonne journée
Nickelllll!
Merci Banzaï, je clos le post.
Bonne journée à tous.
Licaon