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

Bereich kopieren in zweite Datei einfügen

Bereich kopieren in zweite Datei einfügen
03.11.2014 20:04:19
Laeubchen
Guten Abend,
vielleicht kann mir jemand helfen.
Ich habe eine Liste-Spectro-Vorlage.xlsm (Zieldatei) und eine Material.xls (Quelldatei).
Die Quelldatei ist eine Datei die uns zugesandt wird.
Von den laufenden Nummern (Lfd.Nr. 1 - 10) in dieser Tabelle möchte ich bestimmte Bereiche kopieren und in die Zieltabelle einfügen, die zur weiteren Bearbeitung später dient.
Aus der Zieltabelle heraus rufe ich den Dialog öffnen auf und wähle meine Quelle aus.
Anschließend sollen automatisch die Bereiche eingefügt werden, je Lfd-Nr. eine Zeile.
Bisher habe ich zwei Prozeduren.
Bei der ersten Prozedur funktioniert es leider nur für die Lfd.Nr.1, dann leider komme ich nicht weiter, um die weiteren Lfd.Nr'n abzuarbeiten. Ich weiß leider nicht wie ich es umsetzen kann.
Bei der zweiten Prozedur habe ich zwar die Möglichkeit Stück für Stück alles zu kopieren und einzufügen, aber vielleicht gibt es doch eine kürzere Variante.
Habe es leider nicht geschafft weder bei der Mehrfachauswahl, noch bei der DatenHolen ohne Formatierung die Daten einzufügen.
Vielleicht zum besseren Verständnis lege ich beide Dateien mit ab.
https://www.herber.de/bbs/user/93521.xlsm
https://www.herber.de/bbs/user/93522.xls
Es würde mich sehr freuen, kann mir jemand weiterhelfen.
Die Dateien müssen später unter 2003 laufen, bitte nicht wundern das ich eine .xlsm abgelegt habe.
Gruß
Laeubchen

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bereich kopieren in zweite Datei einfügen
04.11.2014 12:35:46
Michael
Hallo Läubchen,
ich habe Deine zweite Prozedur etwas angepaßt:
Sub DatenHolen()
Dim qzeile, zzeile As Long
ChDrive Left(CurDir, 1)
ChDir CurDir
Set wbziel = ThisWorkbook.Worksheets("Tabelle1")
Dim Daten As Variant
Daten = Application.GetOpenFilename("Excel-Arbeitsmappe (*.xls*), *.xls*", _
, "Daten auslesen")
Workbooks.Open Daten
Set wbQuelle = ActiveWorkbook.Worksheets("Tabelle1")
zzeile = 2
qzeile = 5
While wbQuelle.Range("A" & qzeile)  ""
With wbQuelle
' Kopieren von A5-G5 nach A2-G2:
For i = 1 To 7
wbziel.Cells(zzeile, i) = .Cells(qzeile, i)
Next
wbziel.Range("H" & zzeile) = .Range("B" & qzeile + 2)
' folgende Zeile auskommentiert und ersetzt...
'    wbziel.Range("I" & zzeile) = .Range("D" & qzeile + 2)
' sehr lange Paketnr. evtl. angezeigt in
' Exponentendarstellung: 5,23E10 oder so
' läßt sich vermeiden durch vorangestelltes Hochkomma:
wbziel.Range("I" & zzeile) = "'" & .Range("D" & qzeile + 2)
wbziel.Range("J" & zzeile) = .Range("F" & qzeile + 2)
End With
zzeile = zzeile + 1
qzeile = qzeile + 3
Wend
wbziel.Activate
Set wbziel = Nothing
Set wbQuelle = Nothing
End Sub
Ich habe die Kopiererei durch eine schlichte Zuweisung ersetzt, dann wird das Format Deiner Zieltabelle nicht zerschossen.
Kernstück der Änderung sind zwei neue Variablen, die jeweils die Zeilennummer für das Lesen bzw. die Ausgabe beinhalten. Die fürs Lesen wird wegen der üblen dreizeiligen Darstellung (auf die Du ja scheint's keinen Einfluß hast) immer um 3 erhöht, die für die Ausgabe nur um 1.
Sollte auch problemlos unter 2003 rennen.
Schöne Grüße,
Michael

Anzeige
AW: Bereich kopieren in zweite Datei einfügen
04.11.2014 20:52:52
Laeubchen
Hallo Michael,
tausend Dank für Deine Mühe und es läuft einfach fantastisch !!!
Lieber Gruß
Laeubchen

gerne
05.11.2014 11:15:38
Michael
Hallo Läubchen,
freut mich, wenn's läuft.
Vielen Dank für Dein freundliches feedback,
liebe Grüße,
Michael

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige