Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
256to260
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
256to260
256to260
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Ereignisse/ Klassenmodul/ TextBox_Change()

Ereignisse/ Klassenmodul/ TextBox_Change()
16.05.2003 09:20:49
Jan
Hallo, Ich frage noch mal nach.

Gibt es eine Möglichkeit die Prozedur:
Private Sub TextBox12_Change()
MsgBox " der Wert wurde verändert!"
End Sub

So umzuschreiben, dass ich eine Abfrage für alle TextBoxen gleichzeitig machen Kann?

Also ich möchte erreichen, dass sobald ein wert einer eingelesen Datei verändert wird, ein Ereignis ausgelößt wird.
MfG
Jan
Gestern bekam ich einen Tip es in einem Klassenmodul zu versuchen.
Meine Erfahrungen in diesem Gebiet sind jedoch gleich Null und meine Versuchen bringen kein Ergebnis.

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Ereignisse/ Klassenmodul/ TextBox_Change()
16.05.2003 10:21:34
Michael Scheffler
Hallo,

hier wirst Du geholfen:

https://www.herber.de/forum/archiv/216to220/t216575.htm
https://www.herber.de/forum/archiv/164to168/t165521.htm

Gruß

Micha

Re: Ereignisse/ Klassenmodul/ TextBox_Change()
16.05.2003 11:20:34
Jan
Hallo,
ich habe alles durchgelesen verstehe es aber nicht. Gibt es einen Tip wie man es Macht.
Jan
Re: Ereignisse/ Klassenmodul/ TextBox_Change()
16.05.2003 11:20:52
Jan
Hallo,
ich habe alles durchgelesen verstehe es aber nicht. Gibt es einen Tip wie man es Macht.
Jan
Re: Ereignisse/ Klassenmodul/ TextBox_Change()
16.05.2003 11:22:14
Thomas Risi
Hallo Jan

Auf meiner Webseite findest Du, unter den Beispielen, eine TextBox-Klasse. So in etwa kannst Du dann Dein Problem lösen.

Gruß
Thomas

Risi Thomas Softwareentwicklung


Anzeige
Re: Ereignisse/ Klassenmodul/ TextBox_Change()
16.05.2003 21:51:51
Forum
Hallo Jan

ich möchte ja nicht an Deine Programmierkenntnisse zweifeln aber Klasseprogrammierung ist schon recht Hohe VBA-Programmierung. Die Textboxen müssen erstmal zu Klassen zusammengefast werden.
Ein Tei eines Code für das Changeereignis für 5 Klassen.

Ich wünsch Dir viel Erfolg


' **************************************************************
' Modul: Klasse3 Typ = Klassenmodul
' **************************************************************

Option Explicit
Public WithEvents TextGroup As MSForms.TextBox
Dim Nummer As Integer
' Rate Termin Plan

Sub TextGroup_Change()
If Auftrag.Tag = "0" Then Exit Sub
If TextGroup.Value <> "" Then Numerisch Auftrag, TextGroup.Name
If IsNumeric(Mid(TextGroup.Name, 10, 1)) Then
Nummer = Mid(TextGroup.Name, 9, 2)
Else
Nummer = Mid(TextGroup.Name, 9, 1)
End If
Auftrag.Controls("TXT_Verä" & Nummer & "Rate").Visible = Auftrag.Controls("TXT_Plan" & Nummer & "Rate") <> ""
End Sub


' **************************************************************
' Modul: Auftrag Typ = Userform
' **************************************************************

Option Explicit: Option Compare Text
Dim cb As Control
Dim TextCount1 As Integer, TextCount2 As Integer, TextCount3 As Integer
Dim TextCount4 As Integer, TextCount5 As Integer

Private Sub UserForm_Activate()
Me.Tag = "0"
' Textbox-Klassen setzen
TextCount1 = 0: TextCount2 = 0: TextCount3 = 0: TextCount4 = 0: TextCount5 = 0
For Each cb In Me.Controls
If TypeName(cb) = "TextBox" Then
Select Case cb.Text
Case "1"
TextCount1 = TextCount1 + 1
ReDim Preserve TextBoxen1(1 To TextCount1)
Set TextBoxen1(TextCount1).TextGroup = cb
cb.Text = ""
Case "2"
TextCount2 = TextCount2 + 1
ReDim Preserve TextBoxen2(1 To TextCount2)
Set TextBoxen2(TextCount2).TextGroup = cb
cb.Text = 0
Case "3"
TextCount3 = TextCount3 + 1
ReDim Preserve TextBoxen3(1 To TextCount3)
Set TextBoxen3(TextCount3).TextGroup = cb
cb.Text = ""
Case "4"
TextCount4 = TextCount4 + 1
ReDim Preserve TextBoxen4(1 To TextCount4)
Set TextBoxen4(TextCount4).TextGroup = cb
cb.Text = ""
Case "5"
TextCount5 = TextCount5 + 1
ReDim Preserve TextBoxen5(1 To TextCount5)
Set TextBoxen5(TextCount5).TextGroup = cb
cb.Text = ""
End Select
End If
Next cb
Me.Tag = ""
End Sub


' **************************************************************
' Modul: Variablen Typ = Allgemeines Modul
' **************************************************************

Option Explicit
Public Mldg As String
Public Rategesamt As Double
Public I As Integer
Public TextBoxen1() As New Klasse1
Public TextBoxen2() As New Klasse2
Public TextBoxen3() As New Klasse3
Public TextBoxen4() As New Klasse4
Public TextBoxen5() As New Klasse5

Code eingefügt mit: Excel Code Jeanie

Code Jeanie
Frage
Das Umsetzen nach Html klappt perfekt, auch die Ansicht in den Foren ist gegeben. Bei manchen Foren kann man aber anscheinend nicht den dargestellten Code nach VBA rückkopieren. Warum?
Antwort
Dies liegt nicht an der Code Jeanie !!! Manche Foren interpretieren anscheinend < > Tags nicht richtig und erzeugen am Zeilenende einen weichen Zeilenumbruch anstatt eines harten Zeilenumbruches. Dies führt dazu, dass im VBA-Editor die Zeilen hintereinander geschrieben werden. Zum Rückkopieren in solchen Fällen: Fügen Sie den kopierten Code aus dem Forum nach Word ein, kopieren Sie ihn dort wieder und fügen Sie ihn dann im VBA - Editor ein

Gruß Hajo

Der Code wurde getestet unter Betriebssystem XP Pro und Excel Version XP SBE.
Bitte kein Mail, Probleme sollen im Forum gelöst werden.

Microsoft MVP für Excel

Anzeige

179 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige