Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

eigenschaft einer befehlsschaltfläche ändern





Frage

i need help... ich habe die eigenschaft 'aktiviert' einer befehlsschaltfläche auf NEIN gestellt. diese soll erst aktiviert werden, wenn eine eingabekontrolle durchgeführt wurde. wie kann ich im vba diese eigenschaft wieder ändern? danke für eure hilfe!

Antwort 1 von Floooooo

Angenommen, dein Button hat den Objektnamen "CmdButton".

Dann greifst du über CmdButton. auf die Methoden oder Eigenschaften zu.

In deinem Fall:

CmdButton.enabled = true


(Kleiner Tipp am Rande: Gib mal einen Objektnamen und den Punkt ein, und schau dir dann die aufklappende DropDownListe an. Genausogut hilft auch der Objektkatalog im VBA-Editor weiter.)

Antwort 2 von gosti

danke!!! hat geklappt... kannst mir folgendes vielleicht auch beantworten?

beim klicken auf einen button wird eine eingabeüberprüfung vorgenommen. gibt es eine möglichkeit, dass ich die bearbeitungszeit dieser prozedur auf 2-3 sekunden ausdehnen kann? herzlichen dank für deine inputs.

Antwort 3 von Floooooo

Auch hier hilft Dir die VBA-Hilfe:

Timer-Funktion (Beispiel)
In diesem Beispiel wird die Timer-Funktion verwendet, um die Anwendung kurzzeitig zu unterbrechen. In dem Beispiel wird außerdem DoEvents verwendet, um die Steuerung während der Pause an andere Prozesse abzugeben.

Dim Pausenlänge, Start, Ende, Gesamtdauer
If (MsgBox("5 Sekunden Pause?", 4)) = vbYes Then
    Pausenlänge = 5    ' Dauer festlegen.
    Start = Timer    ' Anfangszeit setzen.
    Do While Timer < Start + Pausenlänge
        DoEvents    ' Steuerung an andere Prozesse
            ' abgeben.
    Loop
    Ende = Timer    ' Ende festlegen.
    Gesamtdauer = Ende - Start    ' Gesamtdauer berechnen.
    MsgBox "Die Pause dauerte " & Gesamtdauer & " Sekunden"
Else
    End
End If



Antwort 4 von gosti

mmmhhm, hab ich auch gefunden, geht aber bei mir nicht. ich brauche nur eine abgespeckte variante...: ich möchte 2-3 sekunden zeitraum (für nichts) zwischen dem Klicken und dem Starten der Prozedur...

Antwort 5 von Floooooo

Hast du eigentlich schonmal VBA programmiert? Natürlich kann man Bespiele nicht 1zu1 übernehmen.

Ich würde z.B. vorschlagen:

Dim Pausenlänge, Start
Pausenlänge = 5    ' Dauer festlegen.
Start = Timer    ' Anfangszeit setzen.
    Do While Timer < Start + Pausenlänge
    Loop



Antwort 6 von gosti

ja, seit ca. 2 jahren. aber dieses 'Do Loop' kenn ich überhaupt nicht. danke jedenfalls, hat nun geklappt.

gruss
gosti

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: