Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1284to1288
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
Inhaltsverzeichnis

Variable aus anderem Workbook übernehmen

Variable aus anderem Workbook übernehmen
30.10.2012 11:57:18
Peter
Guten Tag
Aus meinem Workbook "AAAA.xlsm" rufe ich einen Code in Workbook "BBBB.xls" auf mit Application.Run rPEBE.Value & "!Arbeitsschritte_ausfuehren"
In Workbook "BBBB.xls" wird nun unter anderem eine Dateibezeichnung ermittelt und der Variable strNameDatei zugewiesen.
Meine Frage: Wie kann ich den Inhalt dieser Variable in Workbook "AAAA.xls" übernehmen und weiterverwenden? Am Schluss der Ausführung von "Arbeitsschritte_ausführen" wird die Datei "BBBB.xls" gespeichert und geschlossen.
Gruss, Peter

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
SaveSetting GetSetting
30.10.2012 12:58:23
Erich
Hi Peter,
der Wert muss ja den Ablauf der Prozedur, also auch das Schließen der BBBB.xls, überdauern.
Dann gibt es diese Variable aber nicht mehr im Speicher.
Eine Möglichkeit:
Die Prozedur in BBBB schreibt den Wert z. B. mit SaveSetting,
die aufrufende Prozedur in AAAA liest mit GetSetting, löscht dann evtl. auch mit DeleteSetting.
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

AW: Variable aus anderem Workbook übernehmen
30.10.2012 13:15:19
Tino
Hallo,
hier mal eine Variante
Ich rufe mit Application.Run das Makro in der Mappe2 auf,
dieses wiederum ruft auch mit Application.Run ein Makro in der Mappe1 auf
und übergibt dabei die Variable an Mappe1, dort wird der Inhalt in eine
Public oder wie im Beispiel an eine Variable übergeben.
kommt als Code in Modul
Option Explicit 
Dim varValue 
 
Sub MakroAusMappe1() 
Dim MeVar 
Application.Run "Mappe2.xls!MakroMappe2" 
MsgBox varValue 
varValue = Empty 
End Sub 
 
Sub GlobalVar(varExValue) 
varValue = varExValue 
End Sub 
kommt als Code in Modul
Option Explicit 
 
Sub MakroMappe2() 
Dim MeVariable 
MeVariable = "Test" 
Application.Run "Mappe1.xls!GlobalVar", MeVariable 
End Sub 
Gruß Tino

Anzeige
AW: Variable aus anderem Workbook übernehmen
30.10.2012 13:49:35
Peter
Hallo Tino
Ich will das mal versuchen.
Nun habe ich folgendes probliert:
Den in BBBB.xls aufzurufenden Code habe ich mit einem optionalen Argument ersetzt.
Sub Einzelexporte_holen(Optional strDateiname As String)
End Sub

Hier soll der Name der aufzurufenden Datei übergeben werden (optional deshalb, weil der Code ab und zu direkt in BBBB.xls gestartet wird und daher nichts in Datei AAAA.xls zu geschehen hat.
In Datei AAAA.xlsm wollte ich den Code nun wie folgt aufrufen:
Application.Run rPEBE.Value & "!Arbeitsschritte_ausfuehren(" & ThisWorkbook.Name & ")"
Doch scheint etwas mit der Syntax nicht gut zu sein. Auf jeden Fall wird jetzt das Makro (in der Datei BBBB.xls, die offen ist) nicht gefunden. rPEBE.Value im Direktbereich ausgewertet ergibt "BBBB.xls"
Was mache ich falsch?
Gruss, Peter

Anzeige
AW: Variable aus anderem Workbook übernehmen
30.10.2012 15:32:14
Peter
Hallo
Dieses Problem konnte ich auch noch lösen:
nicht so:
Application.Run rPEBE.Value & "!Arbeitsschritte_ausfuehren(" & ThisWorkbook.Name & ")"
sondern so:
Application.Run rPEBE.Value & "!Arbeitsschritte_ausfuehren", ThisWorkbook.Name
(allfällige weitere Argumente würden nach einem weiteren Komma angehängt).
Gruss, Peter

AW: Variable aus anderem Workbook übernehmen
30.10.2012 13:41:37
Nepumuk
Hallo,
mach doch aus der Sub einfach eine Function:
strNameDatei = Application.Run(rPEBE.Value & "!Arbeitsschritte_ausfuehren")

Am Ende der Prozedur Arbeitsschritte_ausfuehren:
Public Function Arbeitsschritte_ausfuehren()
    
    'dein Code
    
    Arbeitsschritte_ausfuehren = strNameDatei
End Function

Gruß
Nepumuk

Anzeige
AW: Variable aus anderem Workbook übernehmen
30.10.2012 14:34:27
Peter
Hallo Nepumuk
Danke für diesen interessanten Hinweis. Das hat so geklappt.
Gruss, Peter

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige