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

Zurückspringen in geöffnete Datei

Zurückspringen in geöffnete Datei
08.12.2006 11:13:50
georg
Hallo liebe Excel Welt,
wie kann ich in meine "Ausgangsdatei" zurückspringen, wenn ich mir aus einer anderen Datei Infos geholt habe.
Bislang habe ich ff.:
Application.Dialogs(xlDialogOpen).Show _
"D:\TSI\SO&BA Daten\2006"
Sheets("Top 13").Select
Range("A1:BB67").Select
Selection.Copy
Windows("b_Bopp_150_2006.12.04_49_kurz_opps Test.xls").Activate
Sheets("Top 13").Select
....blabla...
speziell die Zeile:
Windows("b_Bopp_150_2006.12.04_49_kurz_opps Test.xls").Activate
möchte ich nicht als feste Vorgabe haben, da der Dateiname immer wieder anders ist.
Ich krieg es nicht hin..
Danke und Gruß
Georg

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zurückspringen in geöffnete Datei
08.12.2006 11:16:17
Matthias
Hallo Georg,
lass das Activate und Select weg und greife direkt auf die Zelle zu, so in der Art:

Variable = Workbooks("b_Bopp_150_2006.12.04_49_kurz_opps Test.xls").Sheets("Top 13").Range("A1")
Dan wechselt die aktive Mappe nicht mehr.
Gruß Matthias
AW: Zurückspringen in geöffnete Datei
08.12.2006 11:33:41
georg
Hallo Matthias,
Hört sich ja ganz einfach an, aber kann ich denn damit ganze Bereiche rüber kopieren?
Ich will ja den Bereich: Range("A1:BB67") aus der "Vorwochendatei" (b_Bopp_150_2006.12.04_48_kurz_opps ) in die jetzt aktuelle Datei (b_Bopp_150_2006.12.04_49_kurz_opps ) einbauen.
Gruß
Georg
Anzeige
AW: Zurückspringen in geöffnete Datei
08.12.2006 11:39:46
Matthias
Hallo Georg,
geht auch:

Sub test()
Range("A1:A10").Value = Workbooks("Mappe2").Sheets("Tabelle1").Range("A1:A10").Value
'oder:
Workbooks("Mappe2").Sheets("Tabelle1").Range("A1:A10").Copy Destination:=Range("B1:B10")
End Sub

Range() ohne was davor bezieht sich auf das aktive Blatt
Sheets() ohne was davor bezieht sich auf die aktive Mappe.
Gruß Matthias
AW: Zurückspringen in geöffnete Datei
08.12.2006 11:58:17
georg
Hallo Matthias,
danke, aber muß ich da nicht noch irgendwie den Pfad angeben, auf dem die Datei steht? Und eigentlich bräuchte ich auch die Formate dieser Datei. Hm - geht es denn nicht, daß ich es mir rüberkopiere und wieder zurückspringe?
Ich habe das "49" des Dateinamens sowieso in den Variablen. Könnte ich evtl. das auch zum Zurückspringen nehmen und in den activate Befehl die Variable einbauen?
ungefähr so:
Windows("b_Bopp_150_2006.12.04_"&KW&"_kurz_opps Test.xls").Activate
Danke und Gruß
Georg
Anzeige
AW: Zurückspringen in geöffnete Datei
08.12.2006 12:05:32
Matthias
Hallo Georg,
aber muß ich da nicht noch irgendwie den Pfad angeben, auf dem die Datei steht?
Nein, denn die Datei muss ja geöffnet sein und es können nicht 2 Dateien gleichen namens offen sei, auch wenn sie in Verschiedenen Verzeichnissen stehen.
Und eigentlich bräuchte ich auch die Formate dieser Datei.
Das geht mit meinem zweiten Beispiel, da werden die Zellen incl. Format kopiert.
Das Select ist echt nicht nötig, lies dazu mal diesen Artikel:
https://www.herber.de/xlfaq/xlbasics/main_sel.htm
Gruß Matthias
Anzeige
AW: Zurückspringen in geöffnete Datei
08.12.2006 15:00:57
georg
Hallo Mattias,
danke für Deine Hilfe, aber ich kriege es nicht hin.
Der Hinweis mit Select ist klasse.
Gruß
Georg
AW: Zurückspringen in geöffnete Datei
08.12.2006 15:09:12
Matthias
Hallo Georg,
was kriegst du nicht hin?
Zeig mal den Code.
Gruß Matthias
AW: Zurückspringen in geöffnete Datei
08.12.2006 15:38:52
georg
Danke, Matthias, daß Du nachfragst, ich hätte Dich jetzt nicht mehr belästigen wollen.
Also, Du hast es so gewollt:
;=)
Ich kann die Quelldatei der Vorwoche mit Deinem Code ansteuern und bekomme die Daten. Auch die Formate kommen korrekt mit. OK soweit.
Aber es muß flexibel sein, da die Quellatei jede Woche anders heißt. Drum habe ich versucht eine Variable mit der Bezeichnung der Kalenderwoche (KW) einzubauen. Das klappt aber nicht. Das Datum habe ich schon aus dem Namen rausgenommen, um den Namen zu vereinfachen.

Sub Makro1()
Dim KW As Integer
KW = 49
Application.Dialogs(xlDialogOpen).Show _
"D:\TSI\SO&BA - LiveCycle\Bopp_CRM Daten\2006"      'man. Aussuchen und Öffnen der Quelle
Windows("b_Bopp_150_49_kurz_opps.xls").Activate     'Zurück in Zieldatei
Sheets.Add.Name = "Top 13 (VWx)"                    'Zielblatt erstellen
Workbooks("b_Bopp_150_48_kurz oppty.xls"). _
Sheets("Top 13").Range("A1:O50").Copy Destination:=Range("B1:B50")
End Sub

Wenn ich jetzt statt der 49 (oder 48) die Variable KW mit &"KW"& einbaue, zeigt er mir einen Kompilierfehler an.
?
Gruß
Georg
Anzeige
AW: Zurückspringen in geöffnete Datei
08.12.2006 16:28:14
Matthias
Hallo Georg,
arbeite besser mit Variablen:

Dim Ziel As Workbook, Quelle As Workbook
Set Ziel = ActiveWorkbook 'Ziel->Aktive Mappe
Application.Dialogs(xlDialogOpen).Show _
"D:\TSI\SO&BA - LiveCycle\Bopp_CRM Daten\2006"      'man. Aussuchen und Öffnen der Quelle
Set Quelle = ActiveWorkbook' Quelle->jetzt aktive Mappe
Ziel.Sheets.Add.Name = "Top 13 (VWx)"
Ziel.Sheets("Top 13").Range("A1:O50").Copy Destination:=Range("B1:B50")

Das stimmt jetzt so sicher nicht, dazu hab ich den Code zu wenig durchschaut, aber vielleicht verstehst du das Prinzip, mit Variablen zu arbeiten, die auf eine Mappe zeigen (die Zuweisung erfolgt mit SetVarName = ...). Dann musst du den Bezug nicht mehr unter Angabe des Mappennamens schreiben, sondern kannst es eben so tun:
Ziel.Sheets("...").Range("..")... usw.
Viel Erfolg!
Gruß Matthias
Anzeige
Danke !
08.12.2006 16:39:28
georg
Hallo Matthias,
jetz hab ich was zum knacken - aber das sieht gut aus.
Vielen Dank für die Mühe mit mir.
Gruß
Georg

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige