Question

J'ai une question à la copie de la ligne active actuelle d'une feuille de calcul à une autre.Dites que j'ai le nom de colonnes suivant, adresse, ville, tel, code postal en feuille1 et j'ai des colonnes similaires dans la feuille 2. Disons que je dis actuellement sur la ligne 100 ou 500 ou 1000 de la colonne Nom de la feuille 1. Je veux seulement copier cette ligne à la feuille 2 et peupler les colonnes de la feuille 2. Jusqu'à présent, j'ai ce code.S'il vous plaît laissez-moi savoir comment procéder.

Private Sub CommandButton1_Click()
Dim CustomerName As String, Customeraddress As String, Customercity As String, Custtel As String, Custzip As String
Worksheets("sheet1").Select
CustomerName = Range("A2")
Customeraddress = Range("B2")
Customercity = Range("C2")
Custtel = Range("D2")
Custzip = Range("E2")
Worksheets("sheet2").Select
Worksheets("Sheet2").Range("B4").Select
If Worksheets("Sheet2").Range("B4").Offset(1, 0) <> "" Then
Worksheets("Sheet2").Range("B4").End(xlDown).Select
End If
ActiveCell.Offset(1, 0).Select
ActiveCell.Value = CustomerName
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Customeraddress
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Customercity
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Custtel
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Custzip
Worksheets("Sheet1").Select
Worksheets("Sheet1").Range("C4").Select
End Sub

Était-ce utile?

La solution

Le bouton de commande est placé dans la feuille1

Essayez ce code:

Private Sub CommandButton1_Click()
    Dim lastrow As Long

    With ThisWorkbook.Worksheets("Sheet2")
        lastrow = Application.Max(4, .Cells(.Rows.Count, "B").End(xlUp).Row + 1)
        .Range("B" & lastrow).Resize(, 5).Value = _
            Range("A" & ActiveCell.Row).Resize(, 5).Value
    End With
End Sub

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top