Autor
|
Thema: VBA-Variable an andere Mappe übergeben (4067 mal gelesen)
|
Paulchen Mitglied Bauing./SW-Entwickler
Beiträge: 1227 Registriert: 19.08.2004 Büro: Win10 Enterprise 64bit, Office Professional Plus 2013 - Privat: Linux Mint 15, LibreOffice
|
erstellt am: 07. Mrz. 2007 13:10 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, für die Profis unter euch sicher ein leichtes: Ich möchte von AlteMappe aus eine Variable an NeueMappe übergeben. In NeueMappe läuft dann gleich eine Suchfunktion, die NeueMappe nach Variable filzt; Aufruf in NeueMappe erfolgt durch 'Workbook_Open'. Wenn ich in AlteMappe eine 'Public'-Variable habe, so gilt diese ja nur für die AlteMappe, die NeueMappe weiß gar nix davon. Gibt es mappenübergreifende Variablen oder irgend eine andere Möglichkeit, das Problem zu lösen? ------------------ Gruß, Frederik Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Thomas Harmening Moderator Arbeiter ツ
Beiträge: 2897 Registriert: 06.07.2001 Das Innerste geäussert und aufs Äusserste verinnerlicht
|
erstellt am: 07. Mrz. 2007 23:03 <-- editieren / zitieren --> Unities abgeben: Nur für Paulchen
ich tippe mal... im Grunde wie bei einem Addin, der Verweis von Mappe 2 auf deine 1 Mappe muss bekannt sein ich würde die Variablen dem neuen Tabellenblatt übergeben, und von dort aus wieder auslesen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Paulchen Mitglied Bauing./SW-Entwickler
Beiträge: 1227 Registriert: 19.08.2004 Büro: Win10 Enterprise 64bit, Office Professional Plus 2013 - Privat: Linux Mint 15, LibreOffice
|
erstellt am: 08. Mrz. 2007 09:25 <-- editieren / zitieren --> Unities abgeben:
|
Paulchen Mitglied Bauing./SW-Entwickler
Beiträge: 1227 Registriert: 19.08.2004 Büro: Win10 Enterprise 64bit, Office Professional Plus 2013 - Privat: Linux Mint 15, LibreOffice
|
erstellt am: 08. Mrz. 2007 15:01 <-- editieren / zitieren --> Unities abgeben:
So, eine nicht gerade mustergültige, dafür funktionierende Lösung: Wert der Variablen in eine beliebige Zelle ("A1") in AlteMappe schreiben (das gesamte Blatt in AlteMappe ist ausgeblendet) Wert aus dieser beliebigen Zelle in AlteMappe auslesen über Range("A1").Copy NeueMappe öffnen (lassen via VBA) Im Workbook_Open - Ereignis der Neue(n)Mappe steht u.a. Code: ... Range("A1").PasteSpecial xlPasteValues strWSuch = ActiveCell.Value ActiveCell.ClearContents ...
Auf Deutsch: Wert aus der Zwischenablage in eine Zelle (in NeueMappe) einfügen (!) Wert aus dieser Zelle wiederum einer Variablen in NeueMappe zuweisen Zelle in NeueMappe putzenEs gibt vermutlich elegantere Wege - nur immer her damit! Dieser hier funktioniert jedenfalls und ist - denke ich - auch nachvollziehbar. Problematisch wird es, wenn mehrere Vars übergeben werden sollen - da reicht die Zwischenablage vermutlich nicht mehr... @Thomas: Oder meintest Du mit Zitat: ich würde die Variablen dem neuen Tabellenblatt übergeben, und von dort aus wieder auslesen.
was völlig anderes?------------------ Gruß, Frederik Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|