Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Das Excel ansprechen in dem Code steht

Forumthread: Das Excel ansprechen in dem Code steht

Das Excel ansprechen in dem Code steht
21.08.2013 10:28:23
SinaFFM
Hallo,
ich habe meinen Code in einem Modul hinterlegt, dass in der Excel-Datei Test.xlsm hinterlegt ist.
Die Anwender haben meistens mehrere Excel-Dateien offen. Meine Verarbeitungsroutinen dürfen aber nur die Tabellenblätter verändern, die in der Datei Test.xlsm hinterlegt sind. Der Dateiname ändert sich nur ständig.
Wie kann ich das richtige Datei ansprechen...?
Gruß
Sina

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
ThisWorkbook.FullName ... owT
21.08.2013 10:37:31
Matthias

AW: ThisWorkbook.FullName ... owT
21.08.2013 10:41:18
SinaFFM
Hallo,
leider nein. Thisworkbook nimmt nur das selektierte Workbook.
Mein Makro läuft um 13:30 Uhr los und guck nach einer Datei.
Wenn der Anwender nun eine andere Excel-Datei offen hat, dann läuft mein Marko beim Versuch in das Tabellenblatt"Auswertung" zu schreiben auf einen Fehler, weil das aktive Excel diese Auswertung nicht hat.
Gruß
Sina

Anzeige
schau mal in die Hilfe ...
21.08.2013 10:59:00
Matthias
Hallo
Na dann teste das mal:
erstelle eine Datei test.xls
erstelle eine Datei demo.xls
In die Datei Demo.xls kommt dieser Code
Option Explicit
Sub test()
Workbooks.Open "test.xls"
MsgBox ThisWorkbook.FullName
End Sub
Was zeigt Dir die MsgBox an?
Auch wenn test.xls geöffnet wurde zeigt die die MsgBox "demo.xls" an.
Weil das ThisWorkbook ist.
Ich poste nichts was ich nicht getestet habe.
Gruß Matthias

Anzeige
ThisWorkbook
21.08.2013 11:17:51
Erich
Hi,
vielleicht gibt es da ein Missverständnis.
"Thisworkbook nimmt nur das selektierte Workbook.": Nein,
ThisWorkbook ist das Workbook, in dessen Code der Ausdruck "Thisworkbook" steht.
"läuft mein Marko beim Versuch in das Tabellenblatt "Auswertung" zu schreiben auf einen Fehler,
weil das aktive Excel diese Auswertung nicht hat"

Mit "das aktive Excel" meinst du wohl die aktive Excelmappe.
Wie hast du dabei "ThisWorkbook" verwendet?
Sheets("Auswertung").Range("A1") = 4711
geht schief, wenn es in der aktiven Excelmappe kein Blatt "Auswertung" gibt. Du willst
ThisWorkbook.Sheets("Auswertung").Range("A1") = 4711
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige