Déplacer une ligne selectionner dans une autres feuilles du même classeur

Bonjour,

j'essaie depuis un moment d'envoyer une ligne sélectionner dans un autre onglet d'archivage

Cette ligne en question se situe dans une listbox qui est dans mon usf3.

Quand je clique sur mon bouton "ARCHIVES" j'ai une boite de dialogue qui s'ouvre et qui me demande si je veux archiver je clique sur oui, ça me prend bien la ligne séléctionnée me la copie et me la supprime de la feuille active , mais quand je vais voir dans ma feuilles archives , il n'y a rien. je vous mets mon bout de code.

Private Sub CommandButton5_Click()
Dim unite As String
Dim val As Integer
Dim LastRow As String

'UserForm6.ListBox1.RowSource = UserForm2.ListBox1.RowSource

 If TextBox2.Value = "" Then MsgBox "Veuillez renseigner le n° de ligne": TextBox2.SetFocus: Exit Sub

    rep = MsgBox("souhaitez-vous ARCHIVER?", vbYesNo + vbQuestion, ")
    If rep = vbYes Then

val = UserForm2.TextBox2.Value

Rows(ActiveCell.Row).Select
Selection.Copy
Sheets("ARCHIVES").Select
ActiveSheet.Rows("1:1").Select
Selection.Insert shift:=xlDown
unite = UserForm2.TextBox1.Value

    End If

    If rep = vbNo Then

        Sheets(unite).Select
    Range("B" & val, "Q" & val).Clear

    Exit Sub

    End If

End Sub

Merci de vos réponses

Bonjour Steph, bonjour le forum,

Tu insères une ligne vide mais tu ne copies pas !... La règle d'or en VBA c'est d'éviter autant que tu le peux les Select / Activate qui ne font que ralentir l'exécution du code et sont source de nombreux bugs. Ton code modifié :

Private Sub CommandButton5_Click()
Dim unite As String
Dim val As Integer

If TextBox2.Value = "" Then MsgBox "Veuillez renseigner le n° de ligne": TextBox2.SetFocus: Exit Sub
unite = Me.TextBox2.Value
val = CInt(unite)
If MsgBox("souhaitez-vous ARCHIVER?", vbYesNo + vbQuestion) = vbYes Then
    Sheets("ARCHIVES").Rows("1:1").Insert shift:=xlDown
    ActiveSheet.Rows(ActiveCell.Row).Copy Sheets("ARCHIVES").Range("A1")
Else
    Sheets(unite).Range("B" & val, "Q" & val).Clear
End If
Unload Me
End Sub

Bonjour ThauThème,

Merci pour ton éclaircissement , je tacherais de faire attention à l'avenir.

Re,

Autre erreur à ne pas commettre et que j'avais oublié de te signaler. Il faut toujours éviter de donner comme nom à une variable un mot clé VBA. C'est le cas avec val...Ça peut créer des confusions.

Rechercher des sujets similaires à "deplacer ligne selectionner feuilles meme classeur"