Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Schaltflächenfarben je nach Sicherheitseinstellung

Forumthread: Schaltflächenfarben je nach Sicherheitseinstellung

Schaltflächenfarben je nach Sicherheitseinstellung
stormlamp@gmx.ch
Hallo,
in meinen Exceldateien verwende ich Schaltflächen um Makros zu starten.
Gibt es die Möglichkeit, die Einstellung der Makrosicherheit abzufragen und die Schaltflächen orange zu färben, wenn Makros nicht erlaubt sind und grün, wenn Makros freigegeben sind?
Anzeige

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

Betreff
Benutzer
Anzeige
AW: Schaltflächenfarben je nach Sicherheitseinstellung
25.06.2012 15:29:27
Rudi
Hallo,
wozu abfragen?
Färbe sie standardmäßig orange und per Makro grün. Dann bleiben sie orange wenn Makros nicht erlaubt sind.
Gruß
Rudi
AW: Schaltflächenfarben je nach Sicherheitseinstellung
25.06.2012 15:37:35
stormlamp@gmx.ch
Hallo Rudi,
so fit bin ich leider nicht. Wie kann ich beim Öffnen der Datei Farbe und evtl. Text der Schaltfläche ändern?
Gruß
Hans
Anzeige
AW: Schaltflächenfarben je nach Sicherheitseinstellung
25.06.2012 19:11:32
Josef

Hallo Hans,
' **********************************************************************
' Modul: DieseArbeitsmappe Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private Sub xWorkbook_BeforeClose() '(Cancel As Boolean)
  Dim objSh As Worksheet, objOLE As OLEObject
  Dim boolSaved As Boolean
  
  boolSaved = Me.Saved
  
  For Each objSh In Me.Worksheets
    For Each objOLE In objSh.OLEObjects
      If objOLE.progID = "Forms.CommandButton.1" Then
        objOLE.Object.BackColor = vbRed
        objOLE.Object.Caption = "Makros nicht aktiviert!"
        objOLE.Object.Enabled = False
      End If
    Next
  Next
  
  If boolSaved Then Me.Save
End Sub


Private Sub Workbook_Open()
  Dim objSh As Worksheet, objOLE As OLEObject
  
  For Each objSh In Me.Worksheets
    For Each objOLE In objSh.OLEObjects
      If objOLE.progID = "Forms.CommandButton.1" Then
        objOLE.Object.BackColor = vbGreen
        objOLE.Object.Caption = "Go..."
        objOLE.Object.Enabled = True
      End If
    Next
  Next
  
End Sub



« Gruß Sepp »

Anzeige
Falscher Code;-(( o.T.
25.06.2012 19:12:29
Josef
« Gruß Sepp »

AW: Schaltflächenfarben je nach Sicherheitseinstellung
25.06.2012 19:12:03
Josef

Hallo Hans,
' **********************************************************************
' Modul: DieseArbeitsmappe Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private Sub Workbook_BeforeClose(Cancel As Boolean)
  Dim objSh As Worksheet, objOLE As OLEObject
  Dim boolSaved As Boolean
  
  boolSaved = Me.Saved
  
  For Each objSh In Me.Worksheets
    For Each objOLE In objSh.OLEObjects
      If objOLE.progID = "Forms.CommandButton.1" Then
        objOLE.Object.BackColor = vbRed
        objOLE.Object.Caption = "Makros nicht aktiviert!"
        objOLE.Object.Enabled = False
      End If
    Next
  Next
  
  If boolSaved Then Me.Save
End Sub


Private Sub Workbook_Open()
  Dim objSh As Worksheet, objOLE As OLEObject
  
  For Each objSh In Me.Worksheets
    For Each objOLE In objSh.OLEObjects
      If objOLE.progID = "Forms.CommandButton.1" Then
        objOLE.Object.BackColor = vbGreen
        objOLE.Object.Caption = "Go..."
        objOLE.Object.Enabled = True
      End If
    Next
  Next
  
End Sub



« Gruß Sepp »

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige