matester
Goto Top

VB Daten aus zwei Dateien kopieren, an erste leere Zelle mit Formatierung kopieren

Hallo User,

ist benötige schnelle Hilfe!!!

Wie kann ich aus zwei Excel Dateien mit je einer Tabelle. Die Daten per VB aus der Datei 2 Tabelle 1 (Spalten A, B, D)
in die 1. Datei Tabelle 1 mit Formatierung in die 1. leere Zelle Spalte A kopieren.

Vielen Dank im Voraus . . .


Leider fuktioniert das Makro von Dieter nicht bei mir, hier eine Aktualisierung mit Bilder


Datei "Quelle" mit Daten in Spalten A bis E , die Inhalte der Spalten A bis E (Bild Quelle) sollen in die Datei "Ziel" (Bild Ziel)
in die erste freie Zeile kopiert werden. Ergebnis nach dem kopieren (Bild Ergebnis Ziel).

Quelle
922fe88b841920a920a41ce236142af0

Ziel
a5e77938a37dcdaea7789711614d9790

Ergebnis Ziel
aec2f1b1cc7d934a163d907d09a5b645
Kommentar vom Moderator Biber am Feb 05, 2010 um 17:59:53 Uhr
Zitat von @matester:
Hallo User,

ist benötige schnelle Hilfe!!!
Hallo matester,
Und deine Beitrag benötigt haben redaktionellen Überarbeiten!!!

Content-Key: 135308

Url: https://administrator.de/contentid/135308

Printed on: April 16, 2024 at 09:04 o'clock

Mitglied: 76109
76109 Feb 05, 2010 at 19:00:15 (UTC)
Goto Top
Hallo matester!

Anderen Code aufgrund von Missverständnissen entfernt.

Hoffe, ich hab's diesmal richtig verstandenface-wink

Quellcode in Ziel-Datei (Einfügen) kopieren:
Option Explicit

Const InternSheet = "Tabelle1"				'Tabellenname Ziel-Datei  
Const ExternSheet = "Tabelle1"				'Tabellenname Quelle-Datei  
Const ExternRange = "A1:E"				'Zelle A1 bis E?  
Const ExternFile = "X:\Test\Quelle.xls"			'Pfad Quelle-Datei  

Sub GetExternData()
    Dim iWks As Worksheet, eWks As Worksheet, EndLine As Long, BegLine As Long
    
    Set iWks = ThisWorkbook.Sheets(InternSheet)
    Set eWks = GetObject(ExternFile).Sheets(ExternSheet)
    
    BegLine = iWks.Cells(iWks.Rows.Count, "A").End(xlUp).Row + 1  
    EndLine = eWks.Cells(eWks.Rows.Count, "A").End(xlUp).Row  
    
    eWks.Range(ExternRange & EndLine).Copy Destination:=iWks.Cells(BegLine, "A")  
    
    Application.DisplayAlerts = False
    GetObject(ExternFile).Close True
    Application.DisplayAlerts = True
End Sub

Gruß Dieter
Member: matester
matester Feb 06, 2010 at 14:47:45 (UTC)
Goto Top
Hallo Dieter,

vielen Dank für die schnelle Unterstützung!!!
Member: matester
matester Feb 06, 2010 at 16:12:25 (UTC)
Goto Top
Hallo Dieter,

leider fuktioniert das Makro nicht bei mir. Habe das Problem auch schlecht beschrieben!!!

Ich habe das Thema nochmals mit Bildern aktualisiert.

Danke für Deine Unterstützung.
Mitglied: 76109
76109 Feb 06, 2010 at 16:55:25 (UTC)
Goto Top
Hallo matester!

Anhand Deiner vorherigen (etwas kurzen) Beschreibung, bin ich davon ausgegangen, dass Du die ganzen Spalten A,B,C bzw. A,B,D in die ersten Spalte A einfügen wolltest. Das habe ich dann wohl falsch verstanden. Anhand Deiner Bilder ist erst jetzt erkennbar, dass ja nur die Zellbereiche unten angefügt werden sollen. Im Moment habe leider keine Zeit und wird daher etwas dauern.

Gruß Dieter
Mitglied: 76109
76109 Feb 06, 2010 at 19:32:08 (UTC)
Goto Top
Hallo matester!

Siehe oben, Code geändert!

Gruß Dieter
Member: matester
matester Feb 07, 2010 at 10:29:11 (UTC)
Goto Top
Hallo Dieter,

danke für die Überarbeitung des Makros. Jetzt läuft es auch bei mir.
Nur das die Daten nach dem Kopieren nicht in der "Zieldatei -- Tabelle1" sondern
in der "Quelldatei -- Tabelle1" landen. Nachdem ich das Makro angepasst habe,
lief es nicht mehr.

Vieleicht kannst Du hier noch einmal Hand anlegen.

Vielen Dank im Voraus
Mitglied: 76109
76109 Feb 07, 2010 at 11:03:38 (UTC)
Goto Top
Hallo matester!

Sorry, aber das kapier ich jetzt nicht ?

Du hast das Makro in der Zieldatei eingefügt und in der Konstanten "ExternFile" den Pfad der Quelldatei angegeben, dann sollte es funktionieren?

Es sei den Du hast beide Dateien geöffnet und werkelst hin und her?

Im Code die Codezeile 11 geändert.

Gruß Dieter
Member: matester
matester Feb 07, 2010 at 11:42:25 (UTC)
Goto Top
Hallo Dieter,

Schade über mein Haupt!!
Ich habe den Code in der Quelldatei eingetragen!!! Und auch beide Dateieb offen!!!

Sorry . . .
Mitglied: 76109
76109 Feb 07, 2010 at 11:52:01 (UTC)
Goto Top
Hallo matester!

Zitat von @matester:
Schade über mein Haupt!!
Du meinst wohl "Asche" oder "Pech und Schwefel", sowas in der Artface-smile
Ich habe den Code in der Quelldatei eingetragen!!! Und auch beide Dateieb offen!!!
Nach der Änderung in Codezeile 11, kannst Du jetzt soviele Datei öffnen wie Du möchstestface-wink, wobei die Quelldatei nach dem Kopiervorgang geschlossen wird.

Gruß Dieter
Member: matester
matester Feb 07, 2010 at 13:51:27 (UTC)
Goto Top
Hallo Dieter,

das Zitat sollte eigentlich mit "Schande . . ." beginnen!!!
Schande über mein Haupt ist nur eine Abwandlung für " Asche über mein Haupt".

... Asche ist also meist verbunden mit Schmutz. Genau hier liegt auch der Ansatzpunkt für den Gebrauch der Asche am Aschermittwoch. Noch heute sagen Leute "Asche über mein Haupt", wenn sie damit die eigene Schuld eingestehen wollen. Aus dem Alten Testament sind mehrere Passagen bekannt, in denen sich Regierende Asche auf ihr Haupt streuten oder sich sogar in Asche setzten, um ihre Schuld zu bekunden.


Danke für die Aktualisierung des Codes.

Bis dann . . .