Incrementer

D

denis

Guest
Bonsoir à tous

pour faire simple

je renseigne avec des Usf

j'ai 3 feuilles une matin une soir et une récape : avec un comandbutton j'active le matin ou le soir et par formule condition. sur le récape, pour une ligne ça va, mais pour faire des copies incrementés la tin-tin

j'ai bien la formule, mais elle marche que pour la feuille nomée

ligne = Sheets("recape").Range("A3650").End(xlUp).Row + 1

Cells(ligne, 1).Value = txtDate
Cells(ligne, 2).Value = TextNsm
Cells(ligne, 4).Value = ComboBox73
Cells(ligne, 6).Value = TextBox1
Cells(ligne, 7).Value = TextBox2
Cells(ligne, 8).Value = TextBox69
Cells(ligne, 9).Value = TextBox70
Cells(ligne, 10).Value = ComboBox51
Cells(ligne, 11).Value = ComboBox52
Cells(ligne, 12).Value = ComboBox42
Cells(ligne, 13).Value = ComboBox49
Cells(ligne, 14).Value = ComboBox43
Cells(ligne, 15).Value = ComboBox50
Cells(ligne, 16).Value = ComboBox44
Cells(ligne, 17).Value = ComboBox45
Cells(ligne, 18).Value = ComboBox46
Cells(ligne, 19).Value = ComboBox47
Cells(ligne, 20).Value = ComboBox48
Cells(ligne, 21).Value = TextBox63

si quelqu'un à la soluce
Merci
 
@

@+Thierry

Guest
Salut Denis, le Forum


Humm pas sûr d'avoir piger le but voulu...... Enfin des méthode en vrac :

Pour copier tes UserForm.AtivexX sur toutes les feuilles du classeurs :

Private Sub CommandButton1_Click()
Dim WS As Worksheet
Dim L As Integer
Dim TxtBox As Validation

For Each WS In Sheets
L = WS.Range("A3650").End(xlUp).Row + 1
With WS
.Cells(L, 1).Value = TextBox1
.Cells(L, 2).Value = TextBox2
.Cells(L, 4).Value = TextBox3
End With
Next WS
End Sub


Pour Copier tes ActiveX sur toutes les feuilles sauf la première :

Private Sub CommandButton1_Click()
Dim X As Byte
Dim L As Integer
Dim TxtBox As Validation

For X = 2 To Sheets.Count
L = Sheets(X).Range("A3650").End(xlUp).Row + 1
With Sheets(X)
.Cells(L, 1).Value = TextBox1
.Cells(L, 2).Value = TextBox2
.Cells(L, 4).Value = TextBox3
End With
Next X
End Sub

Pour Copier tes ActiveX sur une feuille précise

Private Sub CommandButton1_Click()
Dim X As String
Dim L As Integer
Dim TxtBox As Validation

X = InputBox("Taper le nom d'une feuille") ' X peut être d'un autre source of course

On Error GoTo ErrorHandler
With Sheets(X)
L = .Range("A3650").End(xlUp).Row + 1
.Cells(L, 1).Value = TextBox1
.Cells(L, 2).Value = TextBox2
.Cells(L, 4).Value = TextBox3
End With
Exit Sub
ErrorHandler:
If Err = 9 Then
MsgBox "La feuille : " & X & " n'existe pas !"
Else: MsgBox "Erreur non répertoriée"
End If
End Sub

En prime un mini gestionnaire d'erreur ....

Bonne Soirée
@+Thierry
 
@

@+Thierry

Guest
Re Denis

........en te relisant j'ai mieux compris........ donc pour toi c'est le dernière méthode modifiée comme suit :

Tu ajoutes une LisBox dans ton UserForm, elle se nomme ListBox1 ....

Tu initialises ton UserForm comme suit

Private Sub UserForm_Initialize()
With ListBox1
.AddItem "Matin"
.AddItem "Midi"
.AddItem "Soir"
End With
End Sub

Tu mets ce code pour le click de la ListBox1 qui remplacera tes trois CommnadButtons

Private Sub ListBox1_Click()
Dim X As String
Dim L As Integer
Dim TxtBox As Validation

X = ListBox1
With Sheets(X)
L = .Range("A3650").End(xlUp).Row + 1
.Cells(L, 1).Value = TextBox1
.Cells(L, 2).Value = TextBox2
.Cells(L, 4).Value = TextBox3
End With
End Sub

Bien sûr tu t'assures que tu aies bien trois feuilles nommée respectivement "Matin", "Midi" et "Soir" of course

Voilà ce sera plus facile encore !!

Bonne Soirée
 

Statistiques des forums

Discussions
312 024
Messages
2 084 724
Membres
102 640
dernier inscrit
Alml