Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1616to1620
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

Daten von Mappe1 nach Mappe2 kopieren

Daten von Mappe1 nach Mappe2 kopieren
06.04.2018 10:00:34
Mappe1
Hallo Profis,
auf der Suche nach meiner Lösung für meinen Fehler bin ich leider nicht fündig geworden. Ich würde mich freuen wenn man mir helfen kann :)
Folgendes Problem:
Mappe1 Tabelle1 (Protokoll):
Hier werden Daten in den Spalten A:K geschrieben. Spalte A enthält eine eindeutige Seriennummer welche in 10 Zeilen geschrieben wird. Die entsprechenden Werte werden in B:K geschrieben.
Mappe2 Tabelle1 (Archiv):
Hier sollen die neuen Seriennummern mit Daten in den gleichen Spalten/Zeilen reingeschrieben werden, jedoch nach dem letzten Eintrag.
Ich habe es für die Mappe1 geschafft, die Einträge in die letzte Zeile zu bekommen. Jedoch habe ich es nicht geschafft, die neuen Seriennummern zu suchen und einzufügen.
Anbei das Makro:

Sub test()
Call aktu_aus       'Unterprogramm Bildschirmaktualisierung aus
Sheets("Tabelle1").Range("A1:K2000").Copy           'Von der Quelle zu..
Workbooks.Open Filename:="C:MeinPfad\Mappe2.xlsm"
Sheets("Tabelle1").Cells(Sheets("Tabelle1").Rows.Count, 1).End(xlUp).Offset(1, 0).Select    ' _
Ziel  _
einfügen
ActiveSheet.Paste
'Speichert die Datei wieder als XLSM-File und überschreibt die bereits vorhandene Version
ActiveWorkbook.SaveAs Filename:= _
"C:\MeinPfad\Mappe2.xlsm", FileFormat:= _
xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False, Local:=True
Windows("Mappe1.xlsm").Activate
Sheets("Tabelle1").Range("A1:K2000").ClearContents
Call aktu_an        'Unterprogramm Bildschirmaktualisierung an
End Sub

Ich würde mich sehr freuen, wenn mir hierzu jemand helfen kann.
Vielen Dank im voraus.
Grüße
Micha

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten von Mappe1 nach Mappe2 kopieren
06.04.2018 14:29:26
Mappe1
Anbei ein Beispielbild, was gemeint ist.
Userbild
besser Beispiel als Excel-Files
06.04.2018 15:32:20
Tino
Hallo,
besser wäre zwei Beispielmappen Quelle Ziel!
Gruß Tino
genauer beschreiben
09.04.2018 07:15:09
Tino
Hallo,
kannst Du noch beschreiben was genau jetzt ablaufen soll?
Sollen alle Daten aus der Quelle ins Ziel dazugeschrieben werden?
Sollen die bereits vorhandenen Seriennummern gelöscht und durch die aktuellen ersetzt werden?
Gruß Tino
AW: genauer beschreiben
09.04.2018 07:22:45
Micha
Hi,
die neuen Seriennummern der Quelle sollen mit den dazugehörigen Daten in die Zieldatei.
Die Quelldaten sollen im Anschluss gelöscht werden.
AW: genauer beschreiben
09.04.2018 10:22:51
Micha
Hi Tino,
super Makro! Vielen Dank für deine Hilfe.
Grüße
Micha
Anzeige
AW: genauer beschreiben
11.04.2018 07:56:26
Micha
Hallo Tino,
ein Fehler ist noch aufgetreten.
Meine Zieldatei heißt nun "Archivauswertung". Die Daten sollen auf das Blatt MP12 geschrieben werden.
Ich bekomme dann immer den Fehler, dass die Variable nicht definiert ist. Wo liegt mein Fehler?
Hier nochmal der Code.
Grüße
Micha
Option Explicit
Sub Start()
Dim ExWB As Workbook, ExWS As Worksheet, rngTemp As Range, rng As Range
Dim sPath$, sNr$
Dim NextRow&, MaxRow&
On Error GoTo ErrorHandler
sPath = ThisWorkbook.Path & IIf(Right$(ThisWorkbook.Path, 1)  "\", "\", "")
sPath = sPath & "Archivauswertung.xlsm"
Call Events_(False)
Set ExWB = Workbooks.Open(sPath)
Set ExWS = ExWB.Sheets("MP12")
With MP12
MaxRow = .Cells(.Rows.Count, 1).End(xlUp).Row
sNr = ExWS.UsedRange.Columns(1).Address(1, 1, xlR1C1, True, .Cells(1, .Columns.Count))
With .Cells(1, .Columns.Count).Resize(MaxRow)
.FormulaR1C1 = "=IF(CountIf(" & sNr & ",RC1)=0,True,1)"
Set rngTemp = FindFehlende(.Cells)
End With
End With
If Not rngTemp Is Nothing Then
With ExWS
For Each rng In rngTemp.Areas
NextRow = .Cells(.Rows.Count, 1).End(xlUp).Row + 1
rng.EntireRow.Columns(1).Resize(, 15).Copy .Cells(NextRow, 1)
Next
End With
ExWB.Save
End If
ErrorHandler:
On Error Resume Next
ExWB.Close False
MP12.Columns(MP12.Columns.Count).Delete
Call Events_(True)
If Err.Number  0 Then
MsgBox Err.Description, vbCritical, "Fehler: " & Err.Number
Else
MsgBox "Daten wurden übertragen!", vbInformation
End If
End Sub

Anzeige
AW: genauer beschreiben
11.04.2018 08:03:40
Tino
Hallo,
nicht getestet.
Mach aus
With MP12

diese Zeile
With ExWS
Gruß Tino
AW: genauer beschreiben
11.04.2018 08:19:11
Micha
Wenn ich beim "With" und im ErrorHandler auf ExWS ändere, bekomme ich folgenden Fehler:
Fehler -2147221080
"Die angegebene Dimension ist ungültig für den aktuellen Diagrammtyp"
Wenn ich es nur beim "With" ändere, bekomme ich einen Variablenfehler im ErrorHandler
"MP12.Columns(MP12.Columns.Count).Delete
Danke für deine Hilfe :)
Grüße
Micha
AW: genauer beschreiben
11.04.2018 08:56:34
Tino
Hallo,
habe deine Beispieldatei nach deiner beschreibung angepasst.
https://www.herber.de/bbs/user/120988.zip
Gruß Tino
Anzeige
AW: genauer beschreiben
11.04.2018 09:51:12
Micha
Hallo Tino,
ich bin gerade fast verzweifelt.. Bei dir gings.. bei mir wieder nicht.. Tabellenblatt gelöscht, neu angelegt.. nichts..
und dann sehe ich, dass der Blattschutz aktiv ist. Blattschutz raus- Funktion da!
Danke für deine Geduld. Manchmal sitzt das Problem vor dem Rechner ;-)
Grüße
Micha

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige