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

Daten in vorhandene Tabelle kopieren

Daten in vorhandene Tabelle kopieren
29.08.2005 14:07:20
Annette
Hallo Experten!
Ich habe ein Problem bei der Quell und Ziel-Range Angabe für variabel zu öffnende Dateien.
Im Moment sieht der Code so aus:

Sub Dateneinfügen()
Dim PathAndFileNames As Variant 'kein String !
Dim strPathAndFile$
Dim strPath$
Dim strFileName$
Dim xi&
Dim wbk As Workbook
Dim xlsChart As Excel.Chart
Dim wks As Worksheet
Dim objWbkS As Workbook  'Quell-Mappe
Dim objWksS As Worksheet 'Quell-Tabelle
Dim objWbkT As Workbook  'Ziel-Mappe
Dim objWksT As Worksheet 'Ziel-Tabelle
Dim objRngT As Range     'Ziel-Zelle
ChDir _
"C:\Dokumente und Einstellungen\Annette\Desktop\Meteonorm Daten"
PathAndFileNames = Application.GetOpenFilename( _
FileFilter:="Excel Files (*.xls), *.xls", _
Title:="Auswahl Zielmappe", _
MultiSelect:=True)
If VarType(PathAndFileNames) = vbBoolean Then
MsgBox "Abgebrochen!"
Else
'alle ausgewählen File bearbeiten
For xi& = LBound(PathAndFileNames) To UBound(PathAndFileNames)
strPathAndFile = PathAndFileNames(xi&)
strFileName = Split(Dir(strPathAndFile, 63), ".", -1, 0)(0)
strPath$ = Mid(strPathAndFile, 1, Len(strPathAndFile) - Len(strFileName))
Set objWbkT = Workbooks.Open(Filename:=strPathAndFile)
ChDir _
"C:\Dokumente und Einstellungen\Annette\Desktop\Meteonorm Daten\"
PathAndFileNames = Application.GetOpenFilename( _
FileFilter:="Excel Files (*.xls), *.xls", _
Title:="Auswahl Südwand", _
MultiSelect:=False)
Range("G4:G19,I4:J19").Select
Range("I4").Activate
Selection.Copy
Windows("objWbkT.Worksheet(1)").Activate 'das funktioniert so nicht
Range("G42").Select
ActiveSheet.Paste
ChDir _
"C:\Dokumente und Einstellungen\Annette\Desktop\Meteonorm Daten\"
PathAndFileNames = Application.GetOpenFilename( _
FileFilter:="Excel Files (*.xls), *.xls", _
Title:="Auswahl Nordwand", _
MultiSelect:=False)
Windows("BISSAU Nord Wand.xls").Activate
Range("G4:G19,I4:J19").Select
Range("I4").Activate
Application.CutCopyMode = False
Selection.Copy
Windows("BISSAU.xls").Activate
Range("A42").Select
ActiveSheet.Paste
ChDir _
"C:\Dokumente und Einstellungen\Annette\Desktop\Meteonorm Daten\"
PathAndFileNames = Application.GetOpenFilename( _
FileFilter:="Excel Files (*.xls), *.xls", _
Title:="Auswahl Ostwand", _
MultiSelect:=False)
Windows("BISSAU Ost Wand.xls").Activate
Range("G4:G19,I4:J19").Select
Range("I4").Activate
Application.CutCopyMode = False
Selection.Copy
Windows("BISSAU.xls").Activate
Range("D42").Select
ActiveSheet.Paste
ChDir _
"C:\Dokumente und Einstellungen\Annette\Desktop\Meteonorm Daten\"
PathAndFileNames = Application.GetOpenFilename( _
FileFilter:="Excel Files (*.xls), *.xls", _
Title:="Auswahl Westwand", _
MultiSelect:=False)
Windows("BISSAU West Wand.xls").Activate
Range("G4:G19,I4:J19").Select
Application.CutCopyMode = False
Selection.Copy
Windows("BISSAU.xls").Activate
Range("B42").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "Globalstrahlung"
Range("C42").Select
ActiveCell.FormulaR1C1 = "Diffusstrahlung"
ActiveSheet.Paste
Next
End If
End Sub

Das Problem hier bei ist, daß er die Spalten der Zieltabelle auch als Quelldaten ansieht und nicht die aus der speziell dafür geöffneten Datei.
Wie kann ich das ändern und wie muß die Angabe für die Zielzellen sein?

32
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten in vorhandene Tabelle kopieren
29.08.2005 18:28:12
Erich
Hallo Annette,
da kann ich dir einen Hinweis geben (ungetestet):
'Entweder so:
Range("G4:G19,I4:J19").Select
Range("I4").Activate
Selection.Copy
'   Windows("objWbkT.Worksheet(1)").Activate 'das funktioniert so nicht
objWbkT.Activate                         'aktiviert die Zielmappe
objWbkT.Worksheets(1).Select             'selektiert das Blatt
Range("G42").Select
ActiveSheet.Paste
'oder (besser) so:
Range("G4:G19,I4:J19").Copy _
Destination:=objWbkT.Worksheets(1).Range("G42")
Ähnliches kommt mehrfach im Code vor.
Nebenfrage: Sollen alle bearbeiteten Files offen bleiben?
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 09:05:14
Annette
Also offen bleiben sollen sie nicht, aber irgendwie öffnet sich die eigentliche Quell-Datei erst gar nicht, warum?
Da das nicht funktioniert, kann ich auch nicht sagen ob dein Code es tut.
Im Moment sieht der Problembereich so aus:
ChDir _
"C:\Dokumente und Einstellungen\Annette\Desktop\Meteonorm Daten\"

PathAndFileNames = Application.GetOpenFilename( _
FileFilter:="Excel Files (*.xls), *.xls", _
Title:="Auswahl Südwand", _
MultiSelect:=False)

If VarType(PathAndFileNames) = vbBoolean Then
MsgBox "Abgebrochen!"

Set objWbkS = Workbooks.Open(Filename:=strPathAndFile)

Range("G4:G19,I4:J19").Copy _
Destination:=objWbkT.Worksheets(1).Range("G42")

Gruß Annette
Anzeige
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 10:14:24
Erich
Hallo Annette,
mit der Zeile
Set objWbkS = Workbooks.Open(Filename:=strPathAndFile)
sollte eigentlich eine Quelldatei geöffnet werden.. Sie ist dann auch die aktive Mappe, und das Kopieren sollte funktionieren.
Bist du an der Stelle mal im Einzelschrittmodus vorgegangen? Du kannst ja einen Haltepunkt auf die Zeile setzen und - nachdem die Zeile ausgeführt wurde, mal im Excelfenster nachschauen.
Gibt es da eine Fehlermeldung (oder steht irgendwo "on error resume next"?
Grüße von Erich aus Kamp-Lintfort
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 10:48:38
Annette
Hab es mal mit einem Haltepunkt versucht, das Ergebnis ist allerdings das gleiche.
Beim Debuggen der Zeile
Set objWbkS = Workbooks.Open(Filename:=strPathAndFile)
sagt mir VB auch, das objWbks = nothing ist, versteh einer das.
Anzeige
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 11:46:32
Erich
Hallo Annette,
kannst du das mal genauer beschreiben?
Ist objWbkS = Nothing, nachdem das Open ausgeführt wurde (also die Zeile darunter als aktive Makrozeile markiert ist)?
Welchen Wert hat die Variable strPathAndFile zu diesem Zeitpunkt?
Grüße von Erich aus Kamp-Lintfort
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 12:09:55
Annette
Also genauer beschreiben ist schwierig.
Aber ich versuchs mal.
Ich führe das Makro aus, kann die Ziel-Datei auswählen diese wird geöffnet, die Zellen wie gewünscht zusammen gefaßt und benannt. Dann kann ich die erste Quelldatei auswählen, dann wird das Makro unterbrochhen und die Zeile
Set objWbkS = Workbooks.Open(Filename:=strPathAndFile)
wird gelb hinterlegt.
Wenn ich nun darauf gehe zeigt es mir an objwbks = nothing ist und zeigt mir für strPathandfile den Pfad an, dieser ist der gleiche wie bei der Ziel-Datei. Kann man das ändern?
Jetzt fällt mir auch wieder ein, daß er mich immer fragt, ob ich die Datei noch mal öffnen möchte, da dann die veränderten Daten verloren gehen.
Anzeige
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 12:10:04
Annette
Also genauer beschreiben ist schwierig.
Aber ich versuchs mal.
Ich führe das Makro aus, kann die Ziel-Datei auswählen diese wird geöffnet, die Zellen wie gewünscht zusammen gefaßt und benannt. Dann kann ich die erste Quelldatei auswählen, dann wird das Makro unterbrochhen und die Zeile
Set objWbkS = Workbooks.Open(Filename:=strPathAndFile)
wird gelb hinterlegt.
Wenn ich nun darauf gehe zeigt es mir an objwbks = nothing ist und zeigt mir für strPathandfile den Pfad an, dieser ist der gleiche wie bei der Ziel-Datei. Kann man das ändern?
Jetzt fällt mir auch wieder ein, daß er mich immer fragt, ob ich die Datei noch mal öffnen möchte, da dann die veränderten Daten verloren gehen.
Anzeige
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 12:10:23
Annette
Also genauer beschreiben ist schwierig.
Aber ich versuchs mal.
Ich führe das Makro aus, kann die Ziel-Datei auswählen diese wird geöffnet, die Zellen wie gewünscht zusammen gefaßt und benannt. Dann kann ich die erste Quelldatei auswählen, dann wird das Makro unterbrochhen und die Zeile
Set objWbkS = Workbooks.Open(Filename:=strPathAndFile)
wird gelb hinterlegt.
Wenn ich nun darauf gehe zeigt es mir an objwbks = nothing ist und zeigt mir für strPathandfile den Pfad an, dieser ist der gleiche wie bei der Ziel-Datei. Kann man das ändern?
Jetzt fällt mir auch wieder ein, daß er mich immer fragt, ob ich die Datei noch mal öffnen möchte, da dann die veränderten Daten verloren gehen.
Anzeige
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 12:10:24
Annette
Also genauer beschreiben ist schwierig.
Aber ich versuchs mal.
Ich führe das Makro aus, kann die Ziel-Datei auswählen diese wird geöffnet, die Zellen wie gewünscht zusammen gefaßt und benannt. Dann kann ich die erste Quelldatei auswählen, dann wird das Makro unterbrochhen und die Zeile
Set objWbkS = Workbooks.Open(Filename:=strPathAndFile)
wird gelb hinterlegt.
Wenn ich nun darauf gehe zeigt es mir an objwbks = nothing ist und zeigt mir für strPathandfile den Pfad an, dieser ist der gleiche wie bei der Ziel-Datei. Kann man das ändern?
Jetzt fällt mir auch wieder ein, daß er mich immer fragt, ob ich die Datei noch mal öffnen möchte, da dann die veränderten Daten verloren gehen.
Anzeige
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 12:10:51
Annette
Also genauer beschreiben ist schwierig.
Aber ich versuchs mal.
Ich führe das Makro aus, kann die Ziel-Datei auswählen diese wird geöffnet, die Zellen wie gewünscht zusammen gefaßt und benannt. Dann kann ich die erste Quelldatei auswählen, dann wird das Makro unterbrochhen und die Zeile
Set objWbkS = Workbooks.Open(Filename:=strPathAndFile)
wird gelb hinterlegt.
Wenn ich nun darauf gehe zeigt es mir an objwbks = nothing ist und zeigt mir für strPathandfile den Pfad an, dieser ist der gleiche wie bei der Ziel-Datei. Kann man das ändern?
Jetzt fällt mir auch wieder ein, daß er mich immer fragt, ob ich die Datei noch mal öffnen möchte, da dann die veränderten Daten verloren gehen.
Anzeige
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 12:10:52
Annette
Also genauer beschreiben ist schwierig.
Aber ich versuchs mal.
Ich führe das Makro aus, kann die Ziel-Datei auswählen diese wird geöffnet, die Zellen wie gewünscht zusammen gefaßt und benannt. Dann kann ich die erste Quelldatei auswählen, dann wird das Makro unterbrochhen und die Zeile
Set objWbkS = Workbooks.Open(Filename:=strPathAndFile)
wird gelb hinterlegt.
Wenn ich nun darauf gehe zeigt es mir an objwbks = nothing ist und zeigt mir für strPathandfile den Pfad an, dieser ist der gleiche wie bei der Ziel-Datei. Kann man das ändern?
Jetzt fällt mir auch wieder ein, daß er mich immer fragt, ob ich die Datei noch mal öffnen möchte, da dann die veränderten Daten verloren gehen.
Anzeige
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 12:10:55
Annette
Also genauer beschreiben ist schwierig.
Aber ich versuchs mal.
Ich führe das Makro aus, kann die Ziel-Datei auswählen diese wird geöffnet, die Zellen wie gewünscht zusammen gefaßt und benannt. Dann kann ich die erste Quelldatei auswählen, dann wird das Makro unterbrochhen und die Zeile
Set objWbkS = Workbooks.Open(Filename:=strPathAndFile)
wird gelb hinterlegt.
Wenn ich nun darauf gehe zeigt es mir an objwbks = nothing ist und zeigt mir für strPathandfile den Pfad an, dieser ist der gleiche wie bei der Ziel-Datei. Kann man das ändern?
Jetzt fällt mir auch wieder ein, daß er mich immer fragt, ob ich die Datei noch mal öffnen möchte, da dann die veränderten Daten verloren gehen.
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 12:11:14
Annette
Also genauer beschreiben ist schwierig.
Aber ich versuchs mal.
Ich führe das Makro aus, kann die Ziel-Datei auswählen diese wird geöffnet, die Zellen wie gewünscht zusammen gefaßt und benannt. Dann kann ich die erste Quelldatei auswählen, dann wird das Makro unterbrochhen und die Zeile
Set objWbkS = Workbooks.Open(Filename:=strPathAndFile)
wird gelb hinterlegt.
Wenn ich nun darauf gehe zeigt es mir an objwbks = nothing ist und zeigt mir für strPathandfile den Pfad an, dieser ist der gleiche wie bei der Ziel-Datei.
Kann man das ändern?
Jetzt fällt mir auch wieder ein, daß er mich immer fragt, ob ich die Datei noch mal öffnen möchte, da dann die veränderten Daten verloren gehen.
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 12:11:16
Annette
Also genauer beschreiben ist schwierig.
Aber ich versuchs mal.
Ich führe das Makro aus, kann die Ziel-Datei auswählen diese wird geöffnet, die Zellen wie gewünscht zusammen gefaßt und benannt. Dann kann ich die erste Quelldatei auswählen, dann wird das Makro unterbrochhen und die Zeile
Set objWbkS = Workbooks.Open(Filename:=strPathAndFile)
wird gelb hinterlegt.
Wenn ich nun darauf gehe zeigt es mir an objwbks = nothing ist und zeigt mir für strPathandfile den Pfad an, dieser ist der gleiche wie bei der Ziel-Datei.
Kann man das ändern?
Jetzt fällt mir auch wieder ein, daß er mich immer fragt, ob ich die Datei noch mal öffnen möchte, da dann die veränderten Daten verloren gehen.
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 12:11:21
Annette
Also genauer beschreiben ist schwierig.
Aber ich versuchs mal.
Ich führe das Makro aus, kann die Ziel-Datei auswählen diese wird geöffnet, die Zellen wie gewünscht zusammen gefaßt und benannt. Dann kann ich die erste Quelldatei auswählen, dann wird das Makro unterbrochhen und die Zeile
Set objWbkS = Workbooks.Open(Filename:=strPathAndFile)
wird gelb hinterlegt.
Wenn ich nun darauf gehe zeigt es mir an objwbks = nothing ist und zeigt mir für strPathandfile den Pfad an, dieser ist der gleiche wie bei der Ziel-Datei.
Kann man das ändern?
Jetzt fällt mir auch wieder ein, daß er mich immer fragt, ob ich die Datei noch mal öffnen möchte, da dann die veränderten Daten verloren gehen.
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 12:11:34
Annette
Also genauer beschreiben ist schwierig.
Aber ich versuchs mal.
Ich führe das Makro aus, kann die Ziel-Datei auswählen diese wird geöffnet, die Zellen wie gewünscht zusammen gefaßt und benannt. Dann kann ich die erste Quelldatei auswählen, dann wird das Makro unterbrochhen und die Zeile
Set objWbkS = Workbooks.Open(Filename:=strPathAndFile)
wird gelb hinterlegt.
Wenn ich nun darauf gehe zeigt es mir an objwbks = nothing ist und zeigt mir für strPathandfile den Pfad an, dieser ist der gleiche wie bei der Ziel-Datei.
Kann man das ändern?
Jetzt fällt mir auch wieder ein, daß er mich immer fragt, ob ich die Datei noch mal öffnen möchte, da dann die veränderten Daten verloren gehen.
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 12:11:35
Annette
Also genauer beschreiben ist schwierig.
Aber ich versuchs mal.
Ich führe das Makro aus, kann die Ziel-Datei auswählen diese wird geöffnet, die Zellen wie gewünscht zusammen gefaßt und benannt. Dann kann ich die erste Quelldatei auswählen, dann wird das Makro unterbrochhen und die Zeile
Set objWbkS = Workbooks.Open(Filename:=strPathAndFile)
wird gelb hinterlegt.
Wenn ich nun darauf gehe zeigt es mir an objwbks = nothing ist und zeigt mir für strPathandfile den Pfad an, dieser ist der gleiche wie bei der Ziel-Datei.
Kann man das ändern?
Jetzt fällt mir auch wieder ein, daß er mich immer fragt, ob ich die Datei noch mal öffnen möchte, da dann die veränderten Daten verloren gehen.
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 12:11:36
Annette
Also genauer beschreiben ist schwierig.
Aber ich versuchs mal.
Ich führe das Makro aus, kann die Ziel-Datei auswählen diese wird geöffnet, die Zellen wie gewünscht zusammen gefaßt und benannt. Dann kann ich die erste Quelldatei auswählen, dann wird das Makro unterbrochhen und die Zeile
Set objWbkS = Workbooks.Open(Filename:=strPathAndFile)
wird gelb hinterlegt.
Wenn ich nun darauf gehe zeigt es mir an objwbks = nothing ist und zeigt mir für strPathandfile den Pfad an, dieser ist der gleiche wie bei der Ziel-Datei.
Kann man das ändern?
Jetzt fällt mir auch wieder ein, daß er mich immer fragt, ob ich die Datei noch mal öffnen möchte, da dann die veränderten Daten verloren gehen.
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 12:11:37
Annette
Also genauer beschreiben ist schwierig.
Aber ich versuchs mal.
Ich führe das Makro aus, kann die Ziel-Datei auswählen diese wird geöffnet, die Zellen wie gewünscht zusammen gefaßt und benannt. Dann kann ich die erste Quelldatei auswählen, dann wird das Makro unterbrochhen und die Zeile
Set objWbkS = Workbooks.Open(Filename:=strPathAndFile)
wird gelb hinterlegt.
Wenn ich nun darauf gehe zeigt es mir an objwbks = nothing ist und zeigt mir für strPathandfile den Pfad an, dieser ist der gleiche wie bei der Ziel-Datei.
Kann man das ändern?
Jetzt fällt mir auch wieder ein, daß er mich immer fragt, ob ich die Datei noch mal öffnen möchte, da dann die veränderten Daten verloren gehen.
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 12:11:38
Annette
Also genauer beschreiben ist schwierig.
Aber ich versuchs mal.
Ich führe das Makro aus, kann die Ziel-Datei auswählen diese wird geöffnet, die Zellen wie gewünscht zusammen gefaßt und benannt. Dann kann ich die erste Quelldatei auswählen, dann wird das Makro unterbrochhen und die Zeile
Set objWbkS = Workbooks.Open(Filename:=strPathAndFile)
wird gelb hinterlegt.
Wenn ich nun darauf gehe zeigt es mir an objwbks = nothing ist und zeigt mir für strPathandfile den Pfad an, dieser ist der gleiche wie bei der Ziel-Datei.
Kann man das ändern?
Jetzt fällt mir auch wieder ein, daß er mich immer fragt, ob ich die Datei noch mal öffnen möchte, da dann die veränderten Daten verloren gehen.
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 12:11:39
Annette
Also genauer beschreiben ist schwierig.
Aber ich versuchs mal.
Ich führe das Makro aus, kann die Ziel-Datei auswählen diese wird geöffnet, die Zellen wie gewünscht zusammen gefaßt und benannt. Dann kann ich die erste Quelldatei auswählen, dann wird das Makro unterbrochhen und die Zeile
Set objWbkS = Workbooks.Open(Filename:=strPathAndFile)
wird gelb hinterlegt.
Wenn ich nun darauf gehe zeigt es mir an objwbks = nothing ist und zeigt mir für strPathandfile den Pfad an, dieser ist der gleiche wie bei der Ziel-Datei.
Kann man das ändern?
Jetzt fällt mir auch wieder ein, daß er mich immer fragt, ob ich die Datei noch mal öffnen möchte, da dann die veränderten Daten verloren gehen.
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 12:11:39
Annette
Also genauer beschreiben ist schwierig.
Aber ich versuchs mal.
Ich führe das Makro aus, kann die Ziel-Datei auswählen diese wird geöffnet, die Zellen wie gewünscht zusammen gefaßt und benannt. Dann kann ich die erste Quelldatei auswählen, dann wird das Makro unterbrochhen und die Zeile
Set objWbkS = Workbooks.Open(Filename:=strPathAndFile)
wird gelb hinterlegt.
Wenn ich nun darauf gehe zeigt es mir an objwbks = nothing ist und zeigt mir für strPathandfile den Pfad an, dieser ist der gleiche wie bei der Ziel-Datei.
Kann man das ändern?
Jetzt fällt mir auch wieder ein, daß er mich immer fragt, ob ich die Datei noch mal öffnen möchte, da dann die veränderten Daten verloren gehen.
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 12:11:39
Annette
Also genauer beschreiben ist schwierig.
Aber ich versuchs mal.
Ich führe das Makro aus, kann die Ziel-Datei auswählen diese wird geöffnet, die Zellen wie gewünscht zusammen gefaßt und benannt. Dann kann ich die erste Quelldatei auswählen, dann wird das Makro unterbrochhen und die Zeile
Set objWbkS = Workbooks.Open(Filename:=strPathAndFile)
wird gelb hinterlegt.
Wenn ich nun darauf gehe zeigt es mir an objwbks = nothing ist und zeigt mir für strPathandfile den Pfad an, dieser ist der gleiche wie bei der Ziel-Datei.
Kann man das ändern?
Jetzt fällt mir auch wieder ein, daß er mich immer fragt, ob ich die Datei noch mal öffnen möchte, da dann die veränderten Daten verloren gehen.
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 13:44:30
Erich
Hallo Annette,
bist du da auf dem Senden-Button hängen geblieben? :-)
Jetzt habe ich einen weitere Teil der Probleme erkannt. Was genau willst du eigentlich mit dem Makro tun?
a) Inhalte verschiedener Quellmappen in eine (einzige) Zielmappe übertragen?
b) Inhalte verschiedener Quellmappen in verschiedene Zielmappen übertragen?
Wenn a), dann ist bei der Zielmappen-Auswahl MultiSelect:=False sinnvoller. Und dann wäre es auch naheliegender, die Quellmappen in einem einzigen DIalog mit Multiselect:=True auszuwählen und die ix-Schleife über die Quellmappen laufen zu lassen. (Momentan läuft die Schleife über die ausgewählten Zielmappen.)
PathAndFileNames = Application.GetOpenFilename( _
FileFilter:="Excel Files (*.xls), *.xls", _
Title:="Auswahl Südwand", _
MultiSelect:=False)
Bei den Auswahlen der Quellmappen wird die Variable PathAndFileNames (mit "s" hinten) belegt - nicht die später verwendete PathAndFileName (ohne "s").
Bei der ersten Quell-Auswahl steht auch "Multiselect:=True". Soll dat?
Der Variablenname PathAndFileName ist in dem Makro wenig aussagekräftig - hier geht es um mehrere Files (oder File-Sorten: Quelle und Ziel).
Was soll in der Variablen PathAndFileName stehen? Momentan ist das die/eine Zielmappe. Und die soll (fälschlicherweise) mit der von uns diskutierten Anweisung
Set objWbkS = Workbooks.Open(Filename:=strPathAndFile)
geöffnet werden. Daher auch die Frage, "ob ich die Datei noch mal öffnen möchte, da dann die veränderten Daten verloren gehen." (Wenn du hier die Meldung etwas früher gepostet hättest - das Makro könnte schon laufen...
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 14:07:10
Annette
Hallo Erich!
Also Ziel dieses Makros ist es mir die Arbeit bei meiner Diplomarbeit zu erleichtern.
Ich befasse mich mit Tageslicht-Daten der ganzen Welt. Hierfür habe ich für jede Stadt eine Basisdatei, leider ist das meteorologische Programm nicht intelligent genug mir gleichzeitig alle Daten auszugeben, so daß ich für jede Orientierungsrichtung eine zusätzlich Datei bekomme. Diese Orientierungs-Werte benötige ich aber zur Bewertung der einzelnen Städte, so daß ich sie in die Basis-Datei integrieren muß.
Also ist b) Inhalte verschiedener Quellmappen in verschiedene Zielmappen übertragen, die richtigere Wahl. Allerdings würde sich jede Schleife auf eine Stadt beziehen, der dann eben die Orientierungen, Norden, Osten, Süden, Westen zugeordnet werden.
Da ich mich nicht gut mit VBA auskenne wollte ich eben den für mich leichtesten Weg nehmen, und die Dateien einzeln auswählen. Schleifen beherrsche ich nämlich nicht.
AW: Daten in vorhandene Tabelle kopieren
30.08.2005 16:17:53
Annette
Hallo Erich!
Also Ziel dieses Makros ist es mir die Arbeit bei meiner Diplomarbeit zu erleichtern.
Ich befasse mich mit Tageslicht-Daten der ganzen Welt. Hierfür habe ich für jede Stadt eine Basisdatei, leider ist das meteorologische Programm nicht intelligent genug mir gleichzeitig alle Daten auszugeben, so daß ich für jede Orientierungsrichtung eine zusätzlich Datei bekomme. Diese Orientierungs-Werte benötige ich aber zur Bewertung der einzelnen Städte, so daß ich sie in die Basis-Datei integrieren muß.
Also ist b) Inhalte verschiedener Quellmappen in verschiedene Zielmappen übertragen, die richtigere Wahl. Allerdings würde sich jede Schleife auf eine Stadt beziehen, der dann eben die Orientierungen, Norden, Osten, Süden, Westen zugeordnet werden.
Da ich mich nicht gut mit VBA auskenne wollte ich eben den für mich leichtesten Weg nehmen, und die Dateien einzeln auswählen. Schleifen beherrsche ich nämlich nicht.
AW: Daten in vorhandene Tabelle kopieren
31.08.2005 10:29:44
Annette
Hallo?!
Ist es denn falsch die Schleife über die Ziel-Datei laufen zu lassen? Es sind schließlich 100te von Mappen, die jeweils um die 4 Orientierungen erweitert werden müssen.
Keine Sorge, meine Diplomarbeit bezieht sich nicht auf die Programmierung von Excel sondern handelt es sich um eine Diplomarbeit im Bereich der Architektur, Tageslicht-Optimierung um genau zu sein, deshalb hab ich auch keine Ahnung von VBA.
Gruß Annette
AW: Daten in vorhandene Tabelle kopieren
31.08.2005 19:55:48
Erich
Hallo Annette,
dein Problem ist nicht vergessen oder verdrängt - ich will dich gern etwas technische Unterstützung für deine Arbeit leisten.
Klar ist es angesichts der Anzahl sinnvoll, eine Schleife über die Zielfiles laufen zu lassen. Die Frage ist, über welche Orte genau diese Schleife laufen könnte.
Allmählich verdichten sich bei mir die Infos, die du hier geschrieben hast, zu folgender Struktur - wobei ich dich frage, ob das so stimmt:
a) Alle benötigten Files (Quellen und Ziele) liegen in ein und demselben Verzeichnis (...\Desktop\Meteonorm Daten")
b) Es gibt mehrere hundert Zielfiles mit dem Namen ORT.xls (wobei ORT auch Leerzeichen usw. enthalten kann).
c) Zu jedem Zielfile gibt es in dem Ordner vier Quellfiles mit den Namen
ORT Nord Wand.xls
ORT West Wand.xls
ORT Ost Wand.xls
ORT Süd Wand.xls (oder: ORT Sued Wand.xls ?)
d) Die Daten der vier Quellfiles, jeweils die Bereiche G4:G19,I4:J19, sollen immer kopiert werden auf einen Bereich, der in Zeile 42 des Zielfiles beginnt:
Spalten A bis C für Nord
Spalten D bis F für Ost
Spalten G bis I für Süd
Spalten J bis L für West (hier stand im Makro Spalte B, aber das würde Werde von "Nord" überschreiben.)
e) Gibt es pro Ort diese vier Datenlieferungen nur einmalig? Vermutlich werden die Daten doch zu verschiedenen Terminen ermittelt, und du bekommst von einem Ort mehrfach die vier Himmelsrichtungen. Soll dann eine neue Datenlieferung die alten Daten überschreiben? Oder sollten neue Daten "hinter" die bereits vorhandenen Daten geschrieben werden?
f) Um zu klären, ob überhaupt ein Datei-Öffnen-Dialog gebraucht wird: Sind ALLE Files in dem Verzeichnis, deren Name nicht mit " Wand.xls" endet, Zielfiles? (Dann könnten alle diese Files automatisch als Zielfiles bearbeitet werden.)
Oder hast du eine Tabelle mit den Namen aller untersuchten Orte? Dann könnten alle Files zu den Orten der Liste als Zielfiles ausgesucht und bearbeitet werden. (Wenn ja, in welchen Zellen stehen die Orte?)
g) Wenn das jeweilige Ortsfile klar ist, dann ergeben sich die Namen der vier Quellfiles automatisch als "ORT Richtung Wand.xls". Da braucht es keinen Dialog.
Wenn du mir die Fragen beantworten bzw. meine Struktur korrigieren könntest, versuche ich gern, dein Makro so umzuschreiben, dass du mit der Umsetzung der Daten nicht mehr viel Arbeit haben wirst.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
AW: Daten in vorhandene Tabelle kopieren
31.08.2005 20:23:27
Annette
Hallo Erich!
Zu a) Die Files liegen in unterschiedlichen Ordnern.
Ziel-Dateien: C:\Dokumente und Einstellungen\Annette\Desktop\Meteonorm Daten\Afrika\Excel Tabellen\Monatswerte
Quelldateien: C:\Dokumente und Einstellungen\Annette\Desktop\Meteonorm Daten\Afrika\Excel Tabellen\Wandwerte
Die einzelnen Kontinente haben jeweils einen eigenen Ordner, aber das ist ja ganz leicht im Makro umzustellen.
Zu b)Diese Annahme ist korrekt, wobei manche Namen Sonderzeichen enthalten z.B Mérida
Zu c)Es gibt zu jedem File 4 Quell-Files, allerdings mit ORT Nordwand etc., nicht Richtung und Wand getrennt.
Zu d)Genau richtig die Spaltenaufteilung
Zu e)Es handelt sich in diesem Fall um Durchschnittswerte über 30 Jahre oder mehr, so daß keine Aktualisierung benötigt wird.
Zu f)Alle Files in dem Ordner sind Zielfiles.
Zu g)Ja müßte so sein.
Bsp 1: Mombasa.xls
Mombasa Nordwand.xls
Mombasa Ostwand.xls
Mombasa Südwand.xls
Mombasa Westwand.xls
Bsp 2: Québec.xls
Québec Nordwand.xls
Québec Ostwand.xls
Québec Südwand.xls
Québec Westwand.xls
So ich hoffe damit sind alle Fragen beantwortet.
Ich hoffe ich mache nicht zu viel Arbeit.
Gruß Annette
AW: Daten in vorhandene Tabelle kopieren
31.08.2005 23:56:07
Erich
Hallo Annette,
die Betaversion der Prozedur ist fertig - mal schauen, ob sie auch schon final ist ...
Ich habe den Dialog für die Zielfiles pro Kontinent dringelassen, damit auch mal nur einige der Files bearbeitet werden - und sei es nur zum Testen.
Für jedes Zielfile werden die Quellfiles aus dem jeweiligen Kontinent-Wandwerte-Verzeichnis geöffnet und nach dem Kopieren gleich wieder geschlossen.
Auch die Zielfiles werden (mit Speicherung der Änderungen) geschlossen.
In der Mappe, die die Prozedur enthält, wird im 1. Blatt ein Mini-Protokoll geschrieben. Ist vielleicht nützlich, aber auch einfach abschaltbar:
https://www.herber.de/bbs/user/26226.xls
Hoffentlich Freude beim Test!
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
AW: Daten in vorhandene Tabelle kopieren
01.09.2005 09:17:39
Annette
Danke, danke, danke!
Hab zwei drei Sachen umgestellt, damit es meinen Ordnern entspricht, aber jetzt läuft es einwandfrei.
DANKE!
Gruß Annette
AW: Danke für Rückmeldung
01.09.2005 14:24:04
Erich
Hallo Annette,
freut mich, dass es läuft.
Danke für die Rückmeldung und: Viel Erfolg und wenig Stress mit der Diplomarbeit!
Grüße von Erich aus Kamp-Lintfort

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige