Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

VBA Variable aus UserForm in anderes Modul übergeben.

Frage Entwicklung Basic

Mitglied: mtriebler

mtriebler (Level 1) - Jetzt verbinden

15.02.2010 um 14:38 Uhr, 20535 Aufrufe, 6 Kommentare

Ich habe das Problem, daß die Public Variablen nach Verlassen der Userformn nicht mehr bekannt sind.

Beim Öffnen einer Word Vorlage wird dafür gesorgt, daß das entstehende Dokument sofort in einem bestimmten Verzeichnis abgelegt wird (das klappt ohne Probleme, indem der Benutzername mittels application.username ermittelt wird).

Die Dateien sollen aber auch einheitlichen Namenskonventionen entsprechen, wozu 2 Zeichenketten mit einerUserForm erfragt werden.

Dazu wurden 2 Public Variablen von Typ String definiert.

Wenn des Makro vom Modul-Code (.bas) in die Userform (.frm) geht, sind diese Public-Variablen noch bekannt und sie erhalten durch die Eingaben ihre Werte. Sie bringen diese aber nicht zurück.

Wenn die UserForm verlassen wird und das Makro wieder im Basic-Modul "ankommt", sind sie unbekannt und leer.
Mitglied: 76109
15.02.2010 um 15:01 Uhr
Hallo mtriebler (Horst-Marti ...)!

Und wo hast Du die Variablen Public definiert?

Wenn die Variablen in einem Modul Public definiert sind, dann können sie in der UserForm auch verändert werden.

Gruß Dieter
Bitte warten ..
Mitglied: mtriebler
15.02.2010 um 16:51 Uhr
Ja, natürlich, das sollen sie ja.

Aber die veränderte Variable kommt nicht mehr ins Modul zurück. Da ist das Problem.
Bitte warten ..
Mitglied: mtriebler
15.02.2010 um 16:52 Uhr
Nachtrag: sie sind in modul1.bas fediniert worden.
Bitte warten ..
Mitglied: 76109
15.02.2010 um 17:24 Uhr
Hallo mtriebler!

Kann es sein, dass die Variablen in der UserForm oder sonst wo, nochmal Lokal definiert sind? Das wäre für mich eine Erklärung.

Gruß Dieter

PS. Und im Modul steht z.B.: Public Variablennamen As String
Bitte warten ..
Mitglied: mtriebler
15.02.2010 um 17:31 Uhr
Hallo, ich glaube ich hab jetzt selber eine.

Habe gesurft, daß in VBA globale Variablen in einem Extra-Modul stehen müssen, d.h.

getrennt von allen Prozeduren. Das wußte ich nicht und versuche es jetzt mal.

Gruß; wenn`s nicht klappt, melde ich mich wieder. Danke
Bitte warten ..
Mitglied: 76109
15.02.2010 um 17:34 Uhr
Hallo mtriebler!

Achso, ja die Public-Anweisung darf natürlich nicht innerhalb einer Sub/Funktion stehen, sondern seperat am Anfang einer Modul-Codeseite. In dem Modul dürfen sich auch Sub's und Funktionen befinden. Wichtig ist nur, dass die Public-Anweisung separat ganz am Anfang steht.

Gruß Dieter
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Sticky Notes - Autostart unterbinden

Tipp von Pedant zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Batch & Shell
gelöst Base64 Decode (Batch,VBS) (26)

Frage von clragon zum Thema Batch & Shell ...

Flatrates
DeutschlandLAN der Telekom - welche internen IPs? (19)

Frage von qualidat zum Thema Flatrates ...

Linux
gelöst Schmaler Scrollbalken in Python-Anwendung (14)

Frage von indi955 zum Thema Linux ...