Excelletje100
Gebruiker
- Lid geworden
- 21 mei 2022
- Berichten
- 5
Hoi!
Als er 1 regel van het tabblad invoer naar het tabblad data wordt overgezet gaat het wel goed, maar als er meerdere regels worden overgezet wordt de laatste regel steeds overschreven....
Dit script moet zowel werken voor het overzetten van 1 regel als voor het overzetten van bijv. 1000 regels.
Ik hoop dat iemand mij kan helpen met dit VBA Excel probleempje
Dit is mijn script:
Als er 1 regel van het tabblad invoer naar het tabblad data wordt overgezet gaat het wel goed, maar als er meerdere regels worden overgezet wordt de laatste regel steeds overschreven....
Dit script moet zowel werken voor het overzetten van 1 regel als voor het overzetten van bijv. 1000 regels.
Ik hoop dat iemand mij kan helpen met dit VBA Excel probleempje

Dit is mijn script:
Code:
Sub KopieerGegevensNaarDataTabblad()
Dim InvulBlad As Worksheet
Dim DataBlad As Worksheet
Dim LaatsteRijData As Long
Dim LaatsteRijInvul As Long
Dim Rij As Long
' Stel de werkbladen in
Set InvulBlad = ThisWorkbook.Sheets("invul")
Set DataBlad = ThisWorkbook.Sheets("data")
' Bepaal de laatste rij met gegevens in het datatablad
LaatsteRijData = DataBlad.Cells(DataBlad.Rows.Count, 1).End(xlUp).Row + 1 ' Nieuwe rij toevoegen
' Bepaal de laatste rij met gegevens in het invulblad
LaatsteRijInvul = InvulBlad.Cells(InvulBlad.Rows.Count, 1).End(xlUp).Row
' Loop door elke rij in het invulblad vanaf rij 2
For Rij = 2 To LaatsteRijInvul
' Kopieer elke waarde naar het datatablad op basis van de kolom
LaatsteRijData = LaatsteRijData
DataBlad.Cells(LaatsteRijData, 21).Value = InvulBlad.Cells(Rij, 1).Value ' Kolom A
LaatsteRijData = LaatsteRijData + 1
DataBlad.Cells(LaatsteRijData, 23).Value = InvulBlad.Cells(Rij, 2).Value ' Kolom B
LaatsteRijData = LaatsteRijData
DataBlad.Cells(LaatsteRijData, 25).Value = InvulBlad.Cells(Rij, 3).Value ' Kolom C
LaatsteRijData = LaatsteRijData
DataBlad.Cells(LaatsteRijData, 26).Value = InvulBlad.Cells(Rij, 4).Value ' Kolom D
LaatsteRijData = LaatsteRijData + 1
DataBlad.Cells(LaatsteRijData, 31).Value = InvulBlad.Cells(Rij, 5).Value ' Kolom E
LaatsteRijData = LaatsteRijData
DataBlad.Cells(LaatsteRijData, 35).Value = InvulBlad.Cells(Rij, 6).Value ' Kolom F
LaatsteRijData = LaatsteRijData + 1
DataBlad.Cells(LaatsteRijData, 86).Value = InvulBlad.Cells(Rij, 7).Value ' Kolom G
LaatsteRijData = LaatsteRijData + 1
DataBlad.Cells(LaatsteRijData, 101).Value = InvulBlad.Cells(Rij, 8).Value ' Kolom H
Next Rij
Call VulLegeCellenMetNul
' Geef een melding wanneer het kopiëren is voltooid
MsgBox "Gegevens zijn succesvol gekopieerd naar het datatablad.", vbInformation
End Sub
Laatst bewerkt door een moderator: