Aloha
MikeRo hat geschrieben:Aber es ist doch ein Bug oder?
Nö.
Prozeduren benötgen den Zusatz "Call" nicht.
Vermutlich hast Du Deine Makros in unterschiedlichen Bibliotheken - rufst Du nun zuerst das Befragungsbogen-Makro auf, ist die Prozedur "Texte" aus dem Angebote-Makro noch nicht geladen und damit nicht bekannt. Das Makro sucht nun zuerst nach lokalen Variablen, dann nach öffentlichen Variablen und Prozeduren, dann global nach Variablen und Prozeduren mit dem Namen "Texte". Findet es nichts, wird "Texte" als neue, leere Variable initialisiert, so wie Du das offenbar ja auch willst.
Startest Du dagegen zuerst das Angebote-Makro, ist ab dem Zeitpunkt eine Prozedur "Texte" bekannt, die aufgerufen werden kann und auch aufgerufen wird in Deinem Fall.
Wenn Du die
Variable "Texte" in der entsprechenden Prozedur via "Dim Texte" einfach deklarierst, sollte das Problem behoben sein.
Und ganz allgemein kannst Du und solltest Du solche Probleme (die ohne Erfahrung fast überhaupt nicht auf eigene Faust lösbar sind) umgehen, indem Du strikte Namenskonventionen für Deine Variablen und am Besten auch für Deine Funktionen / Prozeduren einhältst.
Nennst Du z.B. alle Variablen nach dem Schema "sTexte" für Strings, "oTexte" für UNO-Objekte, "aTexte" für Array etcetc, wird Dir so etwas nicht nochmal passieren.
Bennenst Du Funktionen z.B. mit dem Präfix "fn_", also "fn_Texte", und Prozeduren z.B. mit dem Präfix "pr_", also "pr_Texte", erst Recht nicht.
Die Namensgebung steht Dir dabei natürlich völlig frei, in erster Linie solltest Du selbst jederzeit wissen und Dir sicher sein können, womit Du da gerade im Quelltext arbeitest.