Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
316to320
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
316to320
316to320
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

dat datei importieren in mustermappe

dat datei importieren in mustermappe
07.10.2003 09:44:51
elfi
Hallo Excelprofis,

ich muß eine Datei täglich erstellen (bkr_01.xls … ).In diese werden 5 dat Datein ( dl03.0 , pps03.0 , ppr03.0 , dsv03.0 und dbh03.0 ) eingelesen .
Alle 5 dat Dateien befinden sich im gleichen Pfad.
Ich benötige von den dat Dateien nur die 5. Spalte.
In der xls Datei sollen sie in den Spalten d,e,f,g,h, Jeweils zeile 11 bis 2987 eingefügt werden.
Die xls Datei muß dann weggeschickt werden (per email)—dafür habe ich schon ein makro gefunden.
Ich würde gern die bkr_01.xls als eine Art Mustermappe haben und die Datei , die weggemailt wird , als z.B. bkr_01_031007.xls ohne Makros gespeichert haben.

Leider blicke ich da nicht durch und hoffe , dass mir jemand helfen kann.

Habe in der Recherche einen Beitrag von Nepumuk gefunden der aber leider nicht passt.

Viele Grüße
Elfi

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: dat datei importieren in mustermappe
07.10.2003 12:36:33
Nike
Hi,
zwar nicht schön aber selten und vielleicht sogar brauchbar ;-)


Sub megaimport()
Dim wkbBasis As Workbook
Dim wkb1 As Workbook
Dim wkb2 As Workbook
Dim wkb3 As Workbook
Dim wkb4 As Workbook
Dim wkb5 As Workbook
Dim wksBasis As Worksheet
Set wkbBasis = ActiveWorkbook
Set wksBasis = wkbBasis.Worksheets(1)
Set wkb1 = Workbooks.Open(wkbBasis.Path & "/dl03.0.dat")
With wkb1.Worksheets(1)
.Range(.Cells(11, 5), .Cells(2987, 5)).Copy _
wksBasis.Range(wksBasis.Cells(11, 4), wksBasis.Cells(2987, 4))
End With
wkb1.Close False
Set wkb2 = Workbooks.Open(wkbBasis.Path & "/pps03.0.dat")
With wkb2.Worksheets(1)
.Range(.Cells(11, 5), .Cells(2987, 5)).Copy _
wksBasis.Range(wksBasis.Cells(11, 5), wksBasis.Cells(2987, 5))
End With
wkb2.Close False
Set wkb3 = Workbooks.Open(wkbBasis.Path & "/ppr03.0.dat")
With wkb3.Worksheets(1)
.Range(.Cells(11, 5), .Cells(2987, 5)).Copy _
wksBasis.Range(wksBasis.Cells(11, 6), wksBasis.Cells(2987, 6))
End With
wkb3.Close False
Set wkb4 = Workbooks.Open(wkbBasis.Path & "/dsv03.0.dat")
With wkb4.Worksheets(1)
.Range(.Cells(11, 5), .Cells(2987, 5)).Copy _
wksBasis.Range(wksBasis.Cells(11, 7), wksBasis.Cells(2987, 7))
End With
wkb4.Close False
Set wkb5 = Workbooks.Open(wkbBasis.Path & "/dbh03.0.dat")
With wkb5.Worksheets(1)
.Range(.Cells(11, 5), .Cells(2987, 5)).Copy _
wksBasis.Range(wksBasis.Cells(11, 8), wksBasis.Cells(2987, 8))
End With
wkb5.Close False
End Sub


Bye

Nike
Anzeige
AW: dat datei importieren in mustermappe
07.10.2003 14:10:59
elfi
Hallo Nike,

vielen Dank für Deine Hilfe.
Aber leider mußte ich die Dateinamen ändern ( Dat Dateien kommen von externem Programm )
Habe diese in Deinem Makro geändert und ich brauche die 3. Spalte der Dat Datein , leider
zeigt das Makro nun nichts mehr an.
Kannst Du bitte nochmal drüberschauen , wo der Fehler liegt?!

Danke schön.
Elfi
falsch !
07.10.2003 14:13:51
elfi
ot.
AW: Dateiendung...
07.10.2003 14:22:27
Nike
Hi,
du mußt halt auch noch die entsprechende Dateiendung hinten drann
hängen, sonst findet Excel nix und öffnet entsprechend auch nix...

Du mußt dir ggf. die Endungen im Explorer aktivieren um
sie auch anzeigen zu lassen, sonst heißt z.B. test.xls auch nur test
und würdest du dann versuchen test zu öffnen, würde auch nix passieren

Bye

Nike
Anzeige
AW: Dateiendung...
07.10.2003 14:32:50
elfi
Hallo Nike ,

Danke , aber leider war es das auch nicht.
Die Dateien öffnen sich mit und ohne .dat Endung.
Nur es werden keine Werte aus der Dat Datei übernommen - oder andere Spalten , welche ohne Eintragung sind. In Spalte C Zeile 7 beginnen die Werte.
Danke Nike

Elfi
AW: Dateiendung...
07.10.2003 15:43:58
Nike
Hi,
ja klar wird nix übernommen,
der Code übernimmt nur was aus Spalte 5, wie von dir beschrieben,
da mußt du schon hier anfassen und z.B. so ändern:

With wkb1.Worksheets(1)
.Range(.Cells(7, 3), .Cells(2987, 3)).Copy _
wksBasis.Range(wksBasis.Cells(11, 4), wksBasis.Cells(2987, 4))
End With

.Cells(7, 3) entspricht C7

Bye

Nike
Anzeige
AW: Dateiendung...
08.10.2003 07:54:27
elfi
Hallo Nike,

sorry , ich bin zu dumm.


Sub megaimport()
Dim wkbBasis As Workbook
Dim wkb1 As Workbook
Dim wkb2 As Workbook
Dim wkb3 As Workbook
Dim wkb4 As Workbook
Dim wkb5 As Workbook
Dim wksBasis As Worksheet
Set wkbBasis = ActiveWorkbook
Set wksBasis = wkbBasis.Worksheets(1)
Set wkb1 = Workbooks.Open(wkbBasis.Path & "/dl03.0.dat")
With wkb1.Worksheets(1)
.Range(.Cells(7, 3), .Cells(2987, 3)).Copy _
wksBasis.Range(wksBasis.Cells(11, 4), wksBasis.Cells(2987, 4))
End With
wkb1.Close False
Set wkb2 = Workbooks.Open(wkbBasis.Path & "/erz03.0.dat")
With wkb2.Worksheets(1)
.Range(.Cells(7, 3), .Cells(2987, 3)).Copy _
wksBasis.Range(wksBasis.Cells(11, 5), wksBasis.Cells(2987, 5))
End With
wkb2.Close False
Set wkb3 = Workbooks.Open(wkbBasis.Path & "/einsp03.0.dat")
With wkb3.Worksheets(1)
.Range(.Cells(7, 3), .Cells(2987, 3)).Copy _
wksBasis.Range(wksBasis.Cells(11, 6), wksBasis.Cells(2987, 6))
End With
wkb3.Close False
Set wkb4 = Workbooks.Open(wkbBasis.Path & "/ms03.0.dat")
With wkb4.Worksheets(1)
.Range(.Cells(7, 3), .Cells(2987, 3)).Copy _
wksBasis.Range(wksBasis.Cells(11, 7), wksBasis.Cells(2987, 7))
End With
wkb4.Close False
Set wkb5 = Workbooks.Open(wkbBasis.Path & "/gl03.0.dat")
With wkb5.Worksheets(1)
.Range(.Cells(7, 3), .Cells(2987, 3)).Copy _
wksBasis.Range(wksBasis.Cells(11, 8), wksBasis.Cells(2987, 8))
End With
wkb5.Close False
End Sub


Habe den Code so geändert , er öffnet alle 5 Dateien ohne irgendetwas zu speichern(in xls Datei)
Also mann sieht in der xls Datei nichts !

Kannst Du mir bitte nochmal helfen?

Danke
Elfi
Anzeige
AW: Dateiendung...
08.10.2003 08:50:55
Nike
Hi,

dann pack mal alle 5 Dateien in ein .zip Archiv und lass mal schaun...
Oben auf durchsuchen und dann auf "Datei zum Server" klicken um die Datei hochzuladen.

So auf Zuruf fällt mir sonst nix ein...

Bye

Nike
AW: Dateiendung...
08.10.2003 09:10:04
elfi
Hallo Nike ,

Vielen Dank für Deine Hilfe .
Die Dateien sind in

Die Datei https://www.herber.de/bbs/user/1322.zip wurde aus Datenschutzgründen gelöscht


Ich muß jetzt leider zum Zahnarzt , bin in ca. 1,5 Stunden zurück .

Vielen Dank.

Elfi
AW: Dateiendung...
08.10.2003 10:35:43
Nike
Hi,
abgesehen davon, das die Dateien anders heißen
und nicht gesplittet importiert wurden,
sollte es jetzt so funken...

https://www.herber.de/bbs/user/1323.zip

Bye

Nike
Anzeige
einfach genial , Vielen Dank Nike !!!!
08.10.2003 10:50:25
elfi
Hallo Nike ,

es funktioniert !

VIELEN DANK !


Alles Gute

Elfi
AW: na, das freut ein denn ja auch ;-)
08.10.2003 12:32:30
Nike
Hi Elfi,
freut mich ja, das es funkt.

Bitte beachte es werden nur 3000 Sätze kopiert,
wenn es also mal mehr werden sollten, mußt du den Code anpassen...

Ansonsten viel Spaß damit.

Bye

Nike
AW: dat datei importieren in mustermappe
07.10.2003 14:11:37
elfi
Hallo Nike,

vielen Dank für Deine Hilfe.
Aber leider mußte ich die Dateinamen ändern ( Dat Dateien kommen von externem Programm )
Habe diese in Deinem Makro geändert und ich brauche die 3. Spalte der Dat Datein , leider
zeigt das Makro nun nichts mehr an.
Kannst Du bitte nochmal drüberschauen , wo der Fehler liegt?!


Sub megaimport()
Dim wkbBasis As Workbook
Dim wkb1 As Workbook
Dim wkb2 As Workbook
Dim wkb3 As Workbook
Dim wkb4 As Workbook
Dim wkb5 As Workbook
Dim wksBasis As Worksheet
Set wkbBasis = ActiveWorkbook
Set wksBasis = wkbBasis.Worksheets(1)
Set wkb1 = Workbooks.Open(wkbBasis.Path & "/dl03.0")
With wkb1.Worksheets(1)
.Range(.Cells(7, 3), .Cells(2987, 5)).Copy _
wksBasis.Range(wksBasis.Cells(11, 4), wksBasis.Cells(2987, 4))
End With
wkb1.Close False
Set wkb2 = Workbooks.Open(wkbBasis.Path & "/erz03.0")
With wkb2.Worksheets(1)
.Range(.Cells(7, 3), .Cells(2987, 5)).Copy _
wksBasis.Range(wksBasis.Cells(11, 5), wksBasis.Cells(2987, 5))
End With
wkb2.Close False
Set wkb3 = Workbooks.Open(wkbBasis.Path & "/einsp03.0")
With wkb3.Worksheets(1)
.Range(.Cells(7, 3), .Cells(2987, 5)).Copy _
wksBasis.Range(wksBasis.Cells(11, 6), wksBasis.Cells(2987, 6))
End With
wkb3.Close False
Set wkb4 = Workbooks.Open(wkbBasis.Path & "/ms03.0")
With wkb4.Worksheets(1)
.Range(.Cells(7, 3), .Cells(2987, 5)).Copy _
wksBasis.Range(wksBasis.Cells(11, 7), wksBasis.Cells(2987, 7))
End With
wkb4.Close False
Set wkb5 = Workbooks.Open(wkbBasis.Path & "/gl03.0")
With wkb5.Worksheets(1)
.Range(.Cells(7, 3), .Cells(2987, 5)).Copy _
wksBasis.Range(wksBasis.Cells(11, 8), wksBasis.Cells(2987, 8))
End With
wkb5.Close False
End Sub

Danke schön.
Elfi
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige