Alle TextBoxes in UF sollen ein Makro starten
 |
Betrifft: Alle TextBoxes in UF sollen ein Makro starten
von: Marco
Geschrieben am: 13.08.2004 11:29:04
Hallo zusammen,
ich habe folgendes Problem:
Ich habe eine UserForm mit 3 Frames und in diesen Frames befinden sich jeweils 42 TextBoxes. Ich möchte nun gern allen 126 TextBoxes das gleiche Makro zuweisen (Ausführung bei Doppelklick), allerdings möchte ich nicht 126 mal schreiben:
Private Sub TextBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Application.Run ("Makro1")
End Sub
Gibt es da eine Möglichkeit?
Schon mal vielen Dank für eure Mühe!
Gruß
Marco
Betrifft: AW: Alle TextBoxes in UF sollen ein Makro starten
von: Patrick
Geschrieben am: 13.08.2004 11:34:24
Du schreibst deinen Makro in eine Sub funktion also
Sub Makro()
dein Makro ...
End Sub
und dann schreibst in
Private Sub TextBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
call Makro
End Sub
für Makro kannste auch einen anderen namen nehmen was weiß ich Toilettendeckel :)
Betrifft: AW: Alle TextBoxes in UF sollen ein Makro starten
von: Marco
Geschrieben am: 13.08.2004 11:52:37
Hallo Patrick,
das müsste ich doch aber auch wieder allen TextBoxes einzeln zuordnen, oder habe ich dich falsch verstanden?
Gruß
Marco
Betrifft: AW: Alle TextBoxes in UF sollen ein Makro starten
von: Patrick
Geschrieben am: 13.08.2004 11:54:16
Ja da hast du recht aber immer noch besser als 100 mal den Makro schreiben oder keine richtig antwort von ulf zu bekommen!! ;)
Viel Spaß noch
Excel Gut alles GUt
Betrifft: AW: Alle TextBoxes in UF sollen ein Makro starten
von: Beni
Geschrieben am: 13.08.2004 12:06:08
Hallo Marco,
wenn immer das gleiche Makro ausgeführt werden muss, dann klicke doch auf das Frame.
Gruss Beni
Private Sub Frame1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Makro ausführen
End Sub
Betrifft: AW: Alle TextBoxes in UF sollen ein Makro starten
von: Marco
Geschrieben am: 13.08.2004 12:16:03
Hallo Beni,
das klappt leider nicht, da das dann laufende Makro den Inhalt der TextBox ausliest, aus der es gestartet wurde...
Trotzdem vielen Dank!
Gruß
Marco
Betrifft: AW: Alle TextBoxes in UF sollen ein Makro starten
von: Ulf
Geschrieben am: 13.08.2004 11:36:38
Dazu ist ein Klassenmodul nötig, bei VBA gut ja kein Problem.
Ulf
Betrifft: AW: Alle TextBoxes in UF sollen ein Makro starten
von: patrick
Geschrieben am: 13.08.2004 11:40:15
Wie klassenmodul wie darf man das denn verstehen wie soll das gehen !!!!!
Betrifft: AW: Alle TextBoxes in UF sollen ein Makro starten
von: Ulf
Geschrieben am: 13.08.2004 11:42:33
VBA gut? Bemüh mal die Recherche.
Ulf
Betrifft: AW: Alle TextBoxes in UF sollen ein Makro starten
von: Patrick
Geschrieben am: 13.08.2004 11:45:25
Ho Ho das haben wir hier aber nen ganz harten am start! Man das war ne frage die ... slos bleib mal locker und warum heißt das denn hier forum und nicht meker ecke ? Damit so "schleue" Leute wie du nicht so schleuen leuten in verzickten situationen wie zb. diese helfen und nicht an mekern !!!!!!
Betrifft: AW: Alle TextBoxes in UF sollen ein Makro starten
von: Ulf
Geschrieben am: 13.08.2004 12:03:42
Was willst du denn nun? Wenn du eine Frage hast, stell sie ins Forum.
Ulf
Betrifft: AW: Alle TextBoxes in UF sollen ein Makro starten
von: Marco
Geschrieben am: 13.08.2004 11:45:41
Hallo Ulf,
mein Skill müsste wohl heißen Excel gut - VBA einigermaßen, aber ohne Makrorekorder.
Ich habe mich aber an die zur Verfügung stehenden Auswahlmöglichkeiten gehalten...
Also, mit Klassenmodulen habe ich bisher noch nichts zu tun gehabt, vielleicht kannst Du mir helfen?
Vielen Dank und Gruß
Marco
Betrifft: AW: Alle TextBoxes in UF sollen ein Makro starten
von: Ulf
Geschrieben am: 13.08.2004 12:06:08
In der Recherche ist da garantiert was zu finden. Falls du dich bis zum Ende meiner
Mittagspause (13:00) gedulden kannst, lade ich dir ein Beispiel hoch.
Ulf
Betrifft: AW: Alle TextBoxes in UF sollen ein Makro starten
von: Marco
Geschrieben am: 13.08.2004 12:13:43
Hallo Ulf,
in der Recherche habe ich nichts gefunden, deshalb die Frage im Forum.
Ein Beispiel wäre klasse - bis dahin guten Hunger!
Danke und Gruß
Marco
Betrifft: AW: Alle TextBoxes in UF sollen ein Makro starten
von: Ulf
Geschrieben am: 13.08.2004 12:57:05
Thomas hat dir weiter unten ein Beispiel, wenn auch ein wenig umständlich, gepostet.
Du musst nur beachten, dass das Klassenmodul wirklich exakt so benannt wird.
Ulf
Betrifft: AW: Alle TextBoxes in UF sollen ein Makro starten
von: Thomas Risi
Geschrieben am: 13.08.2004 13:01:04
Was genau ist denn umständlich?
Gruß
Thomas
Risi Thomas Softwareentwicklung
Betrifft: AW: Alle TextBoxes in UF sollen ein Makro starten
von: Ulf
Geschrieben am: 13.08.2004 14:00:42
Wollte dir nicht zu nahe treten, ist alles super.
Ulf
Betrifft: AW: Alle TextBoxes in UF sollen ein Makro starten
von: Marco
Geschrieben am: 13.08.2004 13:14:35
Hallo Ulf,
auch dir vielen Dank.
Gruß
Marco
Betrifft: AW: Alle TextBoxes in UF sollen ein Makro starten
von: Thomas Risi
Geschrieben am: 13.08.2004 12:25:31
Hallo Marco
Füge ein Klassenmodul in Dein Projekt ein, und gib ihm den Namen CTB. Dann diesen Code einfügen ...
Option Explicit
Dim WithEvents TB As MSForms.TextBox
Public Function Create(TextBox As MSForms.TextBox) As Boolean
Set TB = TextBox
If Not TB Is Nothing Then _
Create = True
End Function
Private Sub TB_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
MsgBox TB.Text
End Sub
Code eingefügt mit
Syntaxhighlighter 3.0
In das Initialze-Event Deiner UserForm dann das hier ...
Option Explicit
Dim CTBS() As CTB
Private Sub UserForm_Initialize()
Dim item As Object
Dim i As Integer: i = -1
For Each item In UserForm1.Controls
If TypeOf item Is MSForms.TextBox Then
i = i + 1
ReDim Preserve CTBS(i)
Set CTBS(i) = New CTB
CTBS(i).Create item
End If
Next item
End Sub
Code eingefügt mit
Syntaxhighlighter 3.0
Gruß
Thomas
Risi Thomas Softwareentwicklung
Betrifft: AW: Alle TextBoxes in UF sollen ein Makro starten
von: Marco
Geschrieben am: 13.08.2004 13:13:11
Hallo Thomas,
vielen Dank, das war genau das was ich gesucht habe!
Ich habe nur den Namen der UserForm ändern müssen und statt der MsgBox mein Makro aufgerufen.
Nochmals vielen Dank und Gruß
Marco
Beiträge aus den Excel-Beispielen zum Thema "Alle TextBoxes in UF sollen ein Makro starten"