Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1244to1248
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Erneutes kopieren in Mappe, in nächste leere Zeile

Erneutes kopieren in Mappe, in nächste leere Zeile
Erik
Hallo zusammen,
ich würde gern meinen code erweitern aber bekomme es nicht hin. Ich würde gern beim erneuten drücken des buttons (kopiert zellen in eine andere Mappe), das excel meine zeile zuvor überprüft ob da schon was steht und wenn dort schon was eingefügt wurde, einfach in die nächste zeile schreibt/ kopiert. Hat dafür jmd was für mich ?
Danke im voraus.
Grüße Erik
Hier mein code:
Sub LadeButton_Click()
Dim strOrdner As String, strdateiname As String
Dim wbMappe As Workbook
strOrdner = "Pfad/"
strdateiname = "Datei.xlsx"
On Error Resume Next 'Fehlerbehandlung
Set wbMappe = Workbooks(strdateiname)
If Not wbMappe Is Nothing Then
wbMappe.Activate
MsgBox "Mappe ist bereits geöffnet !"
Else
'Wenn Mappe noch nicht geöffnet ist
If Dir(strOrdner & strdateiname)  "" Then
'Mappe aus o.g. Ordner öffnen :
Set wbMappe = Workbooks.Open(strOrdner & strdateiname, UpdateLinks:=False)
Else
MsgBox "Folgende Datei existiert nicht : " & vbf & vbLf & _
strOrdner & strdateiname, vbOKOnly + vbCritical, "Datei nicht gefunden !"
End If
End If
If Not wbMappe Is Nothing Then
ThisWorkbook.Sheets("Tabelle1").Range("A1:D1").Copy
wbMappe.Sheets("Tabelle1").Range("B1:E1").PasteSpecial xlPasteValues
End If
Set wbMappe = Nothing
End Sub

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Erneutes kopieren in Mappe, in nächste leere Zeile
12.01.2012 17:33:51
fcs
Hallo Erik,
folgende Ergänzung sollte funktionieren.
Sub LadeButton_Click()
Dim strOrdner As String, strdateiname As String
Dim lngZeile As Long
Dim wbMappe As Workbook
strOrdner = "Pfad/"
strdateiname = "Datei.xlsx"
On Error Resume Next 'Fehlerbehandlung
Set wbMappe = Workbooks(strdateiname)
If Not wbMappe Is Nothing Then
wbMappe.Activate
MsgBox "Mappe ist bereits geöffnet !"
Else
'Wenn Mappe noch nicht geöffnet ist
If Dir(strOrdner & strdateiname)  "" Then
'Mappe aus o.g. Ordner öffnen :
Set wbMappe = Workbooks.Open(strOrdner & strdateiname, UpdateLinks:=False)
Else
MsgBox "Folgende Datei existiert nicht : " & vbf & vbLf & _
strOrdner & strdateiname, vbOKOnly + vbCritical, "Datei nicht gefunden !"
End If
End If
If Not wbMappe Is Nothing Then
ThisWorkbook.Sheets("Tabelle1").Range("A1:D1").Copy
With wbMappe.Sheets("Tabelle1")
lngZeile = Application.WorksheetFunction.Max( _
.Cells(.Rows.Count, 2).End(xlUp).Row, _
.Cells(.Rows.Count, 3).End(xlUp).Row, _
.Cells(.Rows.Count, 4).End(xlUp).Row, _
.Cells(.Rows.Count, 5).End(xlUp).Row) + 1
.Cells(lngZeile, 2).PasteSpecial xlPasteValues
End With
End If
Set wbMappe = Nothing
End Sub

Wenn eine der Spalten B bis E im Zielblatt in allen Zeilen einen Wert enthält, dann kannst etwas vereinfachen.z.B. für Spalte B:
          lngZeile =   .Cells(.Rows.Count, 2).End(xlUp).Row + 1

Gruß
Franz
Anzeige

324 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige