mikrocontroller.net

Forum: PC-Programmierung Brauche Hilfe (VBA)


Autor: Jürgen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie kann ich in Excel unter VBA einen Button aktivieren.
Und zwar möchte ich das so haben:
Nach einer bestimmten Bedingung soll der Button automatisch gedrückt
(bestätigt) werden. Wie kann ich dies in VBA tun?
Ich habe es schon mit diesen Varianten ausprobiert:
cmdStopMonitor. = msoButtonSetOK
cmdStopMonitor.Enabled = True
-->funktioniert nicht.

Quellcode:
---------------------------------------------------------------------
---------------------------------------------------------------------
Public Sub update()
    ' this updates one row of data and then sets the timer for the
next reading
    Dim timeString As String

    On Error Resume Next
    If continueMonitor Then ' the monitor function is on, set the
timer
        ' set the time for the next reading at 2 seconds
        ' set it first for best accuracy between measurements
        ' Note; setting for less than one second intervals may
        ' prevent the stop button from working
        'intervalString = UserForm1.TextBox1.Text
        If intervalString = "" Then
         intervalString = TextBox1.Text
        End If

        nextTime = Now() + TimeValue("00:00:" + intervalString)

        ' Put the time relative to start time into the column 1
        ' the row is indicated by the global variable 'row'
        ActiveSheet.Cells(row, 1).Select
        Cells(row, 1).Value = Format$(Now() - startTime, "hh:nn:ss")


        If Cells(row, 1).Text = "0" Then ' bad value
                continueMonitor = False
        Else
            ' Call the macro recorded with the toolbar
            If CheckBox1.Value = True Then
             MeasureDCVolts
            End If

            If CheckBox2.Value = True Then
             CurrentDCAmpere
            End If

            ' increment the row one down
            row = row + 1

            ' now set the timer for the next reading
            Application.OnTime nextTime, "sheet1.Update"
            If anzahl_messwerteString = row Then
             'cmdStopMonitor. = msoButtonSetOK
             cmdStopMonitor.Enabled = True
            End If
        End If
    End If
End Sub

Autor: Jürgen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das stimmt nicht --> cmdStopMonitor. = msoButtonSetOK
Ich habe mich verschrieben, so steht es bei mir -->
cmdStopMonitor.Button = msoButtonSetOK

Autor: AndreasH (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Soll nur die Funktion die sich hinter diesem Button verbirgt aufgerufen
werden oder willst Du den Button aktivieren bzw. deaktivieren.

Die Funktion kannst Du einfach an dieser Stelle aufrufen.
            If anzahl_messwerteString = row Then
             funktion_von_cmdStopMonitor
            end If


Aktiviert wird der Button mit cmdStopMonitor.Value = True

Also unter Vorbehalt. Ungetestet aus der Erinnerung.

Grüße
Andreas

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.