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

Parameterübergabe beim Öffnen von Excel

Parameterübergabe beim Öffnen von Excel
21.07.2005 11:44:08
Excel
Hallo Zusammen,
ich habe eine Excel-Datei geschrieben, mit viel VBA-Code. Nennen wir die Datei mal "Datei_A"
jetzt möchte ich aus einer "Datei_B" heraus per VBA die "Datei_A" öffnen (ebenfalls eine Excel-Datei mit VBA-Code) und Ihr dabei gleich einen Wert (besser: mehrere Werte) mit übergeben.
Das Öffnen soll beim Click auf einen Command-Button in "Datei_B" gestartet werden.
GEHT DAS überhaupt ?
Wenn ja: WIE ?
Danke und Gruß,
LT

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

Betreff
Datum
Anwender
Anzeige
AW: Parameterübergabe beim Öffnen von Excel
21.07.2005 11:50:47
Excel
Das müsste meiner Meinung nach gehen:
Wenn Datei B immer nach A geöffnet wird, dann solltest Du die betreffenden Variablen als Public definieren können und der Hase liegt gerupft in der Pfanne...
Oder aber Du rufst Datei B über ein Call-Prozedur auf, bei der Du die Werte als Parameter übergebn kannst (damit habe ich aber keine Erfahrung)...
Gruss
Claus
Danke für die Theorie. und wer kennt die praxis ?
21.07.2005 11:55:35
LT
Hallo Claus,
du konntest mir nicht wirklich weiterhelfen.
das "WIE" ist das problem.
Wer kennt sich denn wirklich damit aus und kann mir die genaue Vorgehensweise beschreiben ?
Danke und Gruß,
LT
AW: Danke für die Theorie. und wer kennt die praxis ?
21.07.2005 12:04:46
Nepumuk
Hi,
das direkte benutzen von gemeinsamen Variablen in zwei Mappen geht nur, wenn du einen Verweis in der MappeA auf MappeB setzt. Das machtst du nach dem öffnen von MappeB. Beim schließen der MappeA löschst du diesen Verweis wieder. Du darfst die Option Explicit - Anweisung in MappeB nicht verwenden, da du sonst einen Kompilierungsfehler erzeugst. Außerdem musst du in einer der Mappen den Projektnamen ändern. Standardmäßig heißen die ja alle VBAProject.
Gruß
Nepumuk
Excel & VBA – Beispiele
Anzeige
machen wir schritt für schritt... (datei öffnen)
21.07.2005 12:10:29
LT
Hi, Danke für den Tip, aber wie auch schon beim "Vorredner" etwas zuviel theorie, damit komm ich nicht klar.
Fangen wir lieber mal in kleinen Schritten an:
Mit welchem VBA-Befehl kann ich aus der Datei in der ich mich befinde eine andere Excel-Datei öffnen ?

Private Sub cmdDateiOeffnen_Click()
'Beim Klick dieses Buttons soll die Datei "test.xls" geöffnet werden.
'was muss ich hier reinschreiben ?
End Sub

Danke und Gruß,
LT
AW: machen wir schritt für schritt... (datei öffnen)
21.07.2005 12:27:13
Nepumuk
Hi,
so:
Private Sub CommandButton1_Click()
    Dim wbkBook As Workbook
    Set wbkBook = Workbooks.Open("D:\Eigene Dateien\Test\Test.xls") 'Pfad anpassen !!!
End Sub

Gruß
Nepumuk
Anzeige
AW: machen wir schritt für schritt... (datei öffnen)
21.07.2005 13:52:37
Claus
Hi Nepomuk,
warum arbeitest Du da mit einer Variable und nicht direkt mit Application.workbook open?
(Ist keine Frage wegen Glaubenskrieg oder so, sondern wirklich eine Frage warum...)
Gruss
Claus
AW: machen wir schritt für schritt... (datei öffnen)
21.07.2005 13:59:40
Nepumuk
Hi Claus,
die brauche ich später noch zum setzen des Verweises und kann das ganze, wenn mehrere Mappen geöffnet, sind besser kontrollieren. Wenn sich z.B. der Mappenname ändert, muss ich nur noch an einer Stelle ändern. Normalerweise mache ich das mit einer eigenen Klasse, aber ich glaube, damit überfordere ich LT.
Gruß
Nepumuk
ja, das würdest du :-)
21.07.2005 14:08:40
LT
...ich scheine ja gleich den "richtigen Eindruck" hinterlassen zu haben ;-)
ich werde am wochenende mal versuchen mit dem was du bisher geschrieben hast irgendwie zurecht zu kommen.
für weitere rückfragen poste ich dann wahrscheinlich neu.
einstweilen vielen dank.
viele DAU-grüße,
LT
Anzeige
AW: Danke für die Theorie. und wer kennt die praxis ?
21.07.2005 12:17:05
Claus
Grins... OK... sorry wenn es arg theoretisch war, was ich geschrieben habe. Ich habe aus der Erwähnung von viel VBA-Code geschlossen, dass Du verstehst was ich da schreibe...
Du deklarierst doch in Deiner Datei die Variablen irgendwo, oder?
Wahrscheinlich mit "DIM blabla as variant" oder so...
Diese Zeile nimmst Du raus und stellst sie vor das erste/oberste Makro in diesem Deinem Sheet und schreibst statt DIM ein PUBLIC rein, also "PUBLIC blabla as string"
Damit ist die betreffende Variable blabla im ganzen Projekt verfügbar. Und wenn Du Datei B aus Datei A heraus mit einem Makro aus A herausöffnest, dann gehört Datei B mit zum gleichen Projekt und blabla behält seinen Wert.
Die Makros die dann in Datei B rumwurschteln sollten aber auch von A aus laufen... Und in B sollten auto_Makros nicht blabla neu definieren...
Gruss
Claus
Anzeige
AW: Parameterübergabe beim Öffnen von Excel
21.07.2005 12:26:54
Excel
Hi,
hier ein etwas anderer Ansatz ...
In Datei_A eine (Pulic)Funktion in einem normalen Modul, die diverse Werte liefert.


Option Explicit
Public Function GetValue(Val As IntegerAs Variant
    Select Case Val
    Case 0: GetValue = "Hallo"
    Case 1: GetValue = "Welt"
    Case 2: GetValue = 55&
    End Select
End Function


In Datei_B werden die Werte dann im Open-Event abgerufen ...


Option Explicit
Private Sub Workbook_Open()
    MsgBox Application.Run("Datei_A.xls!GetValue", 0)
    MsgBox Application.Run("Datei_A.xls!GetValue", 1)
    MsgBox Application.Run("Datei_A.xls!GetValue", 2)
End Sub


Gruß
Thomas
Risi Thomas Softwareentwicklung
Addins - Datenbanklösungen - Komponenten - RTDServer
Anzeige
AW: Parameterübergabe beim Öffnen von Excel
21.07.2005 12:42:33
Excel
Servus Thomas,
hast du das mal getestet? Ich habe nämlich schon die Erfahrung machen müssen, dass nach dem zweiten Aufruf eines Makros, über Application.Run mit Parameterübergabe, in einer anderen Mappe, plötzlich alle öffentlichen Variablen in der aufrufenden Mappe zurückgesetzt waren. Ein anderer hat das auch schon erlebt, und das ganze ist reproduzierbar.
Gruß
Nepumuk
AW: Parameterübergabe beim Öffnen von Excel
21.07.2005 12:51:12
Excel
&gthast du das mal getestet?
Nun, bei mir läuft's ...
Gruß
Thomas
Risi Thomas Softwareentwicklung
Addins - Datenbanklösungen - Komponenten - RTDServer
Anzeige
AW: Parameterübergabe beim Öffnen von Excel
21.07.2005 13:09:28
Excel
Hi Thomas,
der Fehler tritt nur unter bestimmten Voraussetzungen auf. Eine ist, wenn der Aufruf aus dem Klassenmodul eines Diagramms heraus erfolgt.
Gruß
Nepumuk

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige