Controls.Clear

Informationen und Beispiele zu den hier genannten Dialog-Elementen:


Excel-Version: 10.0 (Office XP)
nach unten

Betrifft: Controls.Clear
von: Philip
Geschrieben am: 30.05.2002 - 15:32:32

Hallo !

Weisst jemand warum diese Macro nicht funktionniert ?

Private Sub CommandButton1_Click()
Dim Controls As TextBox
For Each Controls In UserForm1
Controls.Clear
Next
End Sub

Vielen Dank !


nach oben   nach unten

Re: Controls.Clear
von: Michael Scheffler
Geschrieben am: 30.05.2002 - 15:36:53

Weil es kompletter ... ist. Was willst Du damit erreichen, wie man so etwas macht, habe ich Dir weiter unten gezeigt.

Doppelpostings sind sehr beliebt.


nach oben   nach unten

Re: Controls.Clear
von: Philip
Geschrieben am: 30.05.2002 - 15:41:55

Ja, ich weiss !
Das Problem ist das die TextBox Name nicht 1, 2, 3, 4 ...usw sind, sondern total verschiedene sind.
Ich fande deine Idee sehr gut und versuche die anzupassen.
Ich möchte so zu sagen 1 "reset" Funktion erstellen für alle meine TextBoxABCDEFG.text

nach oben   nach unten

Re: Controls.Clear
von: Michael Scheffler
Geschrieben am: 30.05.2002 - 15:48:00

Clear geht nicht! Damit kannst Du Kollektionen aufräumen. Das heißt, Du kannst natürlich alle Controls einer Collection zuweisen, dafür eine eigene Klasse schreiben und dann hast Du die Ereignisse für Deine Klasse:-)

Du solltest so vorgehen. Schleife und darin:

If Controls(iControl).Name Like "Textbox*" Then
...
End If

nach oben   nach unten

Re: Controls.Clear
von: Philip
Geschrieben am: 30.05.2002 - 16:07:26

Ich schaffe es einfach nicht :-( Etwas habe ich nicht verstanden.

Private Sub CommandButton1_Click()
For Each Controls In UserForm1
If Controls(IControl).Name Like "Textbox*" Then
Controls(IControl).Text = ""
End If
Next
End Sub

nach oben   nach unten

Re: Controls.Clear
von: Michael Scheffler
Geschrieben am: 30.05.2002 - 16:22:12

Klar,

entweder:

For Each Control in Controls
If Control.Name Like ...
Next

oder:

For iControl = 0 To Controls.Count - 1
If Controls(iControl).Name Like ...
Next

nach oben   nach unten

Re: Controls.Clear
von: Thomas Risi
Geschrieben am: 30.05.2002 - 16:29:53

Hallo Philip

Versuch's mal so ...

Option Explicit


Private Sub CommandButton1_Click()
Dim i As Object
    
    For Each i In UserForm1.Controls
    
        If TypeOf i Is MSForms.TextBox Then
            
            i.Text = vbNullString
            
        End If
        
    Next i
    
End Sub

     Code eingefügt mit Syntaxhighlighter 1.13


Weitere Beispiele findest Du auf meiner Homepage.


Gruß

Thomas

------------------------------
Internet: Homepage

eMail: Thomas.Risi@t-online.de
------------------------------


nach oben   nach unten

Re: Controls.Clear
von: Philip
Geschrieben am: 30.05.2002 - 16:49:09

Danke Thomas !!

 nach oben

Beiträge aus den Excel-Beispielen zum Thema "fortlaufende Nummer nach Monat und Jahr "