Hallo zusammen,
ich habe folgendes Problem: Und zwar habe ich einen Code geschrieben, der mir Daten von dem vorherigen Tabellenblatt auf das aktive Tabellenblatt kopiert und eingefügt, jedoch soll dieser Code doppelte Daten nicht einfügen und genau dieser Code fehlt mir und ich weiß deswegen nicht, wie ich den verfassen soll.
Zu den Eckdaten kurz: Die Daten die Kopiert werden sollen gehen von der Zelle A3:B100 und werden auf das Tabellenblatt mit dem Namen "Gesamt" in die nächste freie Zelle eingefügt.
Kann mir da jemand helfen, wäre euch sehr dankbar! (Ich blende mal den jetzigen Code ein)
Sub CopyData()
asi = ActiveSheet.Index
nasi = Sheets(asi).Name
If asi = 1 Then
MsgBox "Zu " & nasi & " gibt es keine vorherige Tabelle!", _
48, Environ("UserName")
Exit Sub
End If
asiv = ActiveSheet.Index - 1
nasiv = Sheets(asiv).Name
mgb = MsgBox("Daten werden kopiert von " & nasiv & " nach " & nasi & Chr(13) & _
"Ist das OK?", 36, Environ("UserName"))
If mgb = 7 Then Exit Sub ' 7 = nein
Dim lngLastRow1 As Long, lngLastRow2 As Long
lngLastRow1 = Sheets(nasiv).Cells(Rows.Count, 1).End(xlUp).Row
lngLastRow2 = Sheets(asi).Cells(Rows.Count, 1).End(xlUp).Row
'wenn lngLastRow1 = 1 wird, dann gibt es nur die Spaltenbeschriftung und keine Daten
If lngLastRow1 > 1 Then
Sheets(nasiv).Range("A3:B100" & lngLastRow1).copy
Sheets(asi).Range("A" & lngLastRow2 + 1).PasteSpecial xlValues
Application.CutCopyMode = False
End If
'Zelle markieren
With Sheets(asi)
.Activate
.Range("A" & lngLastRow1 + lngLastRow2).Select
End With
End Sub
|