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

Modul aufrufen

Frage Entwicklung VB for Applications

Mitglied: skid

skid (Level 1) - Jetzt verbinden

22.01.2007, aktualisiert 27.01.2007, 6542 Aufrufe, 5 Kommentare

Hi,

habe ein Skript das mittlerweile ziemlich groß und unübersichtlich geworden ist.

Also hab ich mir gedacht ich erstelle ein paar Module (ich kenne mich mit Modulen überhaupt nicht aus!) um Befehle die immer wieder, in veränderder Form, vorkommen "auszulagern".

Ein Modul konnte ich zwar erstellen aber ich bekomme es einfach nicht hin das ich es aufrufe!

Hier ein Beispiel wie ich es gemacht habe:

In meiner Form ist z.B. diese Zeile

01.
If Text1 = "" Then 
02.
 
03.
Module1 
04.
 
05.
End If


In dem Modul diese:

01.
Public Sub Module1() 
02.
 
03.
MsgBox "Bitte geben Sie den Vornamen ein!", vbInformation 
04.
Text1.SetFocus 
05.
 
06.
End Sub
Sobald ich auf eine Schaltfläche klicke und das Feld Text1 leer ist soll das Modul gestartet werden so das die Meldung kommt - das ich eigentlich alles

Vielleicht kann mir ja einer sagen wie das geht ?!


Gruß
SKID
Mitglied: wakko
22.01.2007 um 15:35 Uhr
Moin,
sach doch mal, welche IDE du benutzt, das könnte helfen...
Das Text1.setFocus ist problematisch, da das Modul die Form nicht automatisch kennt, da sollte noch ein "Form1 ." (bzw. "frmMain") davor.
VBA:
Module fügst du in dein Projekt ein, indem du die Funktion "Datei importieren..." (bei vba) aus dem Kontextmenü (=rechtsklick) des Projektbereichs.
In VB6:
rechtsklick auf den Projektexplorer (wo "Form1" steht) -> hinzufügen -> Datei hinzufügen
(In allen anderen IDE's ähnlich...)
Dann jeweils auf das Modul verweisen, fertisch...

Gruß,
Henrik
Bitte warten ..
Mitglied: Guenni
22.01.2007 um 19:49 Uhr
@skid

Hi,

da du in der Rubrik VBA schreibst, ein Beispiel mit Excel:

01.
Private Sub CommandButton1_Click() 
02.
If TextBox1.Text = "" Then 
03.
 Modul1 
04.
End If 
05.
End Sub 
06.
 
07.
Private Sub Modul1() 
08.
MsgBox "Bitte Vornamen eingeben", vbInformation 
09.
TextBox1.SetFocus 
10.
End Sub
Dieser Code wird komplett in der Form gespeichert, und nicht
in Module.

In Module werden Subs und Funktionen gespeichert, die im
Datenblatt selber oder als Makro aufgerufen werden.

Grüße
Günni

P.S.: Die letzte Behauptung stammt jetzt von mir, da ich
es nicht anders gelernt habe. Wenn jemand mehr weiß....
Bitte warten ..
Mitglied: Desperado
22.01.2007 um 20:03 Uhr
wenn du textboxen immer wieder abrufen willst auf deren wert, dann machst du ins modul:

public function checktextvalue(mytextbox as textbox, mymessage as string) as boolean

if mytextbox.text = "" then
checktextvalue = false
msgbox mymessage
mytextbox.setfocus
else
checktextvalue = true
end function

und in deine form:

Sub Command1_Click()

If checktextvalue(textbox1, "bitte vornamen eingeben") = False then exit sub

End Sub

Grüsse, Desperado
Bitte warten ..
Mitglied: skid
23.01.2007 um 10:42 Uhr
Hi,

dank Euch für die Hilfe.

Habe es mittlerweile auch geschafft so ein Modul aufzurufen.
Nur habe ich gemerkt das nicht alles klappt wie ich es mir vorgestellt habe.

Ich habe unter der ersten Textbox noch ein paar weitere.
Die Meldung wenn die erste leer ist kommt schon aber auch gleich die Meldung für die zweite Textbox und der Cursor steht dann in der zweiten.

Ich habe in meiner Form z.B. einen Abschnitt in dem anhand von den ersten 3 Stellen des Benutzernamens geprüft wird um was für einen User es nich handelt, dann darauf hin eine bestimmte Textdatei ausgelesen wird wo z.B. die Standardgruppen stehen die dem Benutzuer zugewiesen werden sollen.

In der Form funktioniert alles prima aber wenn ich diesen Teil in ein Modul packe und es dann aufrufe funktioniert es nicht mehr.

Da scheint es doch unterschiede zu geben was man in so ein Modul schreibt oder aber ich habe noch nicht denn Sinn und Zweck von Modulen verstanden

Gruß
SKID
Bitte warten ..
Mitglied: Desperado
27.01.2007 um 14:20 Uhr
zum 1.: dann hast du das exit sub vergessen
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
gelöst Cmd Befehle in Powershell GUI aufrufen (5)

Frage von Markus2016 zum Thema Batch & Shell ...

Batch & Shell
gelöst Powershell: CMD Kommando mit Parameter aufrufen (8)

Frage von bonnerjung zum Thema Batch & Shell ...

Windows Server
gelöst SQLCMD über BAT aufrufen (Sicherung SQL Server Express 2012 (3)

Frage von joeyschweiz zum Thema Windows Server ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (17)

Frage von liquidbase zum Thema Windows Update ...