Globale Variablen

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Globale Variablen

Re: Globale Variablen

von arkadiuszpaluszek » Do, 14.07.2011 22:19

Ja, so ist es. Also ist dieses Mysterium nun auch gelöst. :) Kein Problem. Die Globale Variable soll eigentlich die Verbindung zur MySQL - DB sein. Ich habe eine Startseite, diese öffnet dann das "Hauptdokument", dann dessen Formulare und weist ihnen als ihre Verbindung die global definierte Verbindung zu:

Code: Alles auswählen

oForm.ActiveConnection=Connection ' Connection ist eben global deklariert
Nun wollte ich vom Hauptdokument aus weitere Dokumente öffnen und mich hierfür weiterhin der Variable Connection bedienen und musste erstaunt feststellen, dass diese im Hauptdokument eigentlich keinen Wert mehr hat. Ist aber kein Problem, denn ich kann prinzipiell den Buttons im Hauptdokument, welche dann eben weitere Dokumente öffnen und deren Datenbankanbindung definieren, Makros aus der "Startseite" zuweisen - in diesem als erstes geöffnetem Dokument existiert ja die Variable Connection. Also prinzipiell auch dieses Problem gelöst und wieder was dazugelernt.

Dennoch - was heißt "Makros mit Hilfe von Extensions verteilen"? Welche Extension meinst Du und wie funktioniert es?

Danke und Gruß

Arek

Re: Globale Variablen

von DPunch » Do, 14.07.2011 21:41

Aloha
arkadiuszpaluszek hat geschrieben:Gibt es die Möglichkeit eine Variable so zu definieren, dass sie nicht nur innerhalb verschiedener Subroutinen oder Module innerhalb eines Dokuments gültig ist, sondern auch in anderen Dokumenten?
Public bzw. Globale Variablen sind nur in der entsprechenden Bibliothek bekannt, das trifft logischerweise nicht auf unterschiedliche Dokumente zu.

Du kannst den Umweg über die Standard-Bibliothek nehmen, das beeinträchtigt natürlich die Portabilität Deiner Makros.
Oder Du hältst die Makros nicht in den Dokumenten, sondern verteilst sie mithilfe von Extensions.

Re: Globale Variablen

von Karolus » Do, 14.07.2011 19:43

Hallo
Du hast nicht zufällig die erste Sub in eine Dokument-bibliothek gespeichert und das Dokument ist beim Aufruf von Sub Nummer 2 geschlossen?

Gruß Karo

Re: Globale Variablen

von komma4 » Do, 14.07.2011 19:15

Irgendwo ist bei Dir der Wurm drin.

Das funktioniert nämlich genau so, wie von Dir erwartet und in der Dokumentation so beschrieben.

Globale Variablen

von arkadiuszpaluszek » Do, 14.07.2011 19:05

Hallo!

Heute habe ich ein "Anfängerproblem", ich glaube, dass ich missverstehe, was eine globale Variable denn eigentlich ist. Bisher bin ich davon ausgegangen, dass eine globale Variable auch in anderen Dokumenten gültig ist. Nun habe ich ein Dokument1 mit folgendem Code:

Code: Alles auswählen

GLOBAL Variable
Sub Main
Variable="Mein Wert"
End Sub
Das Makro wird ausgeführt, dann ein anderes Dokument geöffnet mit folgendem Makro:

Code: Alles auswählen

Sub Main
msgbox (Variable)
End Sub
Es geht nicht, die Messagebox ist leer. Die Variable hat keine Gültigkeit im anderen Dokument.

Gibt es die Möglichkeit eine Variable so zu definieren, dass sie nicht nur innerhalb verschiedener Subroutinen oder Module innerhalb eines Dokuments gültig ist, sondern auch in anderen Dokumenten?

Gruß

Arek

Nach oben