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 Sub

Comment 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 Sub

Ces 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 Sub

Bonne journée

Nickelllll!

Merci Banzaï, je clos le post.

Bonne journée à tous.

Licaon

Rechercher des sujets similaires à "envoi donnees deux feuilles"