Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
504to508
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
504to508
504to508
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Mehrere Mappen öffnen und Werte einfügen/auslesen

Mehrere Mappen öffnen und Werte einfügen/auslesen
22.10.2004 11:06:39
Robert
Hallo liebe Leute,
Ich habe folgenden Code aufgebaut. Dies war ziemlich schwierig, da über Werte in Mappen eintragen und auslesen nicht al zu viel in Bücher und aufs Internet zu finden ist. Ich hoffe auf eure Hilfe bei meinem weiteren Weg zum Ziel
Der Code funktioniert und trägt werte in alle Mappen ein, die ich im Main.xls eingetragen habe (Row 5, Column 6 bis es keine Einträge mehr hat)
Wo ich aber nicht weiter komme, ist folgendes und ich zeige das wahrscheinlich am Besten anhand des Codes.
Teil 1:
Kopiere der Angegebene Range in alle "Fnamens" Mappen. Diese Daten ändern sich nicht mehr beim nächsten durchlauf.
Resultat: einsetzen klappt problemlos.
Teil 2&3:
Sollten sich bei jede durchlauf ändern und darum habe ich es mal mit Count versucht. Leider sind Count und Loop nicht die richtige Lösung.
Resultat Teil 2: einsetzen klappt problemlos aber nicht bei dem nächsten Durchlauf
Resultat Teil 3: klappt nicht da Teil 2 auch nicht funktioniert
Habt ihr vielleicht eine bessere Lösung für dass was ich erreichen will? Vielleicht gehe ich mit meinem Code ja auch völlig in die falsche Richtung? Ich freue mich auf Kommentare und Lösungsvorschläge.
Liebe Grüsse
Robert


Sub CopyRange()
Dim basebook As Workbook
Dim mybook As Workbook
Dim sourceRange As range
Dim destrange As range
Dim FNames As String
Dim MyPath As String
Dim SaveDriveDir As String
Dim Spath As String
Dim irow As Integer
Dim count As Long
irow = 5
Spath = Workbooks("Main.xls").Worksheets("Assumptions").Cells(irow, 6).Value
FNames = Workbooks("Main.xls").Worksheets("Assumptions").Cells(irow,6).Value
If Len(FNames) = 0 Then
MsgBox "No files in the Directory"
Exit Sub
End If
Application.ScreenUpdating = False
Set basebook = ThisWorkbook
Do While FNames <> ""
For count = 1 To 5
'Teil 1:
'muss in alle Mappen eingefügt werden und ändert sich nicht mehr
'beim nächsten durchlauf
Set mybook = Workbooks.Open(FNames)
Set sourceRange = basebook.Worksheets("Assumptions").range("B4:B10")
Set destrange = mybook.Worksheets("Input").range("I3")
sourceRange.Copy destrange
'Teil 2:
'muss in alle Mappen eingefügt werden und sollte beim nächsten durchlauf
'die nächste zeile auslesen und wiederum einsetzen.
Set sourceRange = basebook.Worksheets("Profiles").range("A7:I7").Offset(count - 1, 0)
Set destrange = mybook.Worksheets("Input").range("D3")
sourceRange.Copy
destrange.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=True
'Teil 3:
'Aufgrund Teil 2 ändern sich die Werten in range("C2:FK2")und mussen
'immer kopiert und auf sheet Outputs Zeile 7 downwards eingefügt werden
Set sourceRange = basebook.Worksheets("Outputs").range("C2:FK2").Offset(count - 1, 0)
Set destrange = basebook.Worksheets("Outputs").range("C7:FK7")
sourceRange.Copy
destrange.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone
'Next count
mybook.Close True
FNames = Workbooks("Main.xls").Worksheets("Assumptions").Cells(irow,6).Value
irow = irow + 1
Loop
Application.ScreenUpdating = True
End Sub

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mehrere Mappen öffnen und Werte einfügen/auslesen
25.10.2004 15:16:32
Robert
Hallo liebe Leute,
Ich hätte gerne gewüsst ob irgend jemanden sich schon mit diesem Code befasst hat.
Ist dieses Problem vielleicht wirklich nicht lösbar oder ist es einfach nicht klar was ich möchte?
Grüsse
Robert
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige