Clever-Excel-Forum

Normale Version: Makro ein/ausschalten
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

ich möchte folgendes Makro per klick auf Button einschalten, und per nochmaligem Klick ausschalten!

Wie kann ich das machen?

LG Gerald


Sub Zeige()
'
' Zeige Makro
'
'
    Columns("M:S").Select
    Selection.FormatConditions.Add Type:=xlTextString, String:="=$U$16", _
        TextOperator:=xlContains
    Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
    With Selection.FormatConditions(1).Font
        .Color = -16751204
        .TintAndShade = 0
    End With
    With Selection.FormatConditions(1).Interior
        .PatternColorIndex = xlAutomatic
        .Color = 10284031
        .TintAndShade = 0
    End With
    Selection.FormatConditions(1).StopIfTrue = False
End Sub
Hallo,

wozu soll das gut sein? Da das Makro ohnehin manuell angestartet werden muss, ist doch alles OK.
Ich denke, das ist eher gemeint

PHP-Code:
Selection.FormatConditions.Delete 
Hallo,

wo muss ich das reinschreiben?

LG
@Gerald:

Du hast dich etwas unglücklich ausgedrückt, darum die Unklarheit.
Dein Makro formatiert ja die Spalten M:S nach den gewählten Vorgaben. Und du willst quasi mit einem Klick die Formatierung aktivieren bzw. wieder rückgängig machen, korrekt?

Dazu wäre ein Umschaltbutton geeignet, hinter den du folgenden Code legen kannst:

Code:
Private Sub ToggleButton1_Click()

if ToggleButton1.Value = true then

    Columns("M:S").Select
    Selection.FormatConditions.Add Type:=xlTextString, String:="=$U$16", _
        TextOperator:=xlContains
    Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
    With Selection.FormatConditions(1).Font
        .Color = -16751204
        .TintAndShade = 0
    End With
    With Selection.FormatConditions(1).Interior
        .PatternColorIndex = xlAutomatic
        .Color = 10284031
        .TintAndShade = 0
    End With
    Selection.FormatConditions(1).StopIfTrue = False

Else

    Selection.FormatConditions.Delete

End If

End Sub
Hallo

Danke an alle Antworten!
Ich werde es wohl doch anders lösen!

LG Gerald
Das ist - offen gesagt - eine ziemlich sinnlose Antwort. Zuerst stellst du eine unklare Frage und wenn man dir eine Lösung präsentiert, gehst du zwar nicht drauf ein, willst aber eine andere Lösung umsetzen.