Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1660to1664
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Symbolleiste Formular ist wie deaktiviert

Symbolleiste Formular ist wie deaktiviert
30.11.2018 21:56:24
Karsten
Hallo,
in meiner Mappe sind sämtliche über Symbolleiste Formular angelegte Schaltflächen verschwunden. Es lassen sich auch keine neuen Schaltflächen erstellen.
Die Mappe ist somit unbrauchbar, weil damit Makros verknüpft sind.
Woran könnte das liegen?
Gruß Karsten

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Symbolleiste Formular ist wie deaktiviert
01.12.2018 02:19:48
fcs
Hallo Karsten,
ich hoffe al du hast auch noch eine nicht zu alte Sicherheitskopie von der Datei, die noch funktioniert.
  • angelegte Schaltflächen verschwunden
    a) versehentlich gelöscht - dann hilf nur die evtl. vorhandene Sicherheitskopie
    Hier könntest dann evtl. auch die Schaltflächen kopieren und in die defekte Datei einfügen und dann die Makros neu zuordnen.
    b) versehentlich die Schaltflächen ausgeblendet
    Es gibt einen Menüpunkt "Auswahlbereich" - ich weiß aber nicht mehr wo der in deiner Excelversion steckt. Hier werden alle Shape-Objekte gelistet mit ihrem Sichtbar-Status. Hier die Schaltflächen ggf. wieder einblenden.
    c) durch verkleinern der Zeilenhöhe oder Spaltenbreite oder ausblenden von Spalten/Zeilen wurden die Schaltflächen verkleinert.
    Hier ermöglicht der Menüpunkt "Auswahlbereich" die Selektion der Schaltflächen und du kannst die Größe der Schaltflächen wieder anpassen.
    Mit nachfolgendem Makro kannst du dir Informationen zu den im aktiven Blatt vorhandenen Schaltflächen anzeigen lassen.

  • Es lassen sich auch keine neuen Schaltflächen erstellen.
    a) Der Blattschutz ist aktiv - dann lassen sich keine Formen hinzufügen.
    b) In Excel fehlt die entsprechende Ojektbibliothek
    Hier muss man im VBA-Editor unter Extras die entsprechenden Verweise prüfen und aktivieren
    Dieser Fehler kann passieren, wenn die auch mal in einer neueren Excel-Version geöffnet und gespeichert wurde.
    c)mehr weiss ich hier auch nicht

  • Gruß
    Franz
    Sub StatusSchaltflaechen()
    Dim wks As Worksheet
    Dim objSh As Shape
    Dim sName$, bolVisible, sTopLeft$, varHoehe, varBreite, sMakro$, sInfo$
    Dim arrShData(), iSh As Integer
    Dim varType As MsoShapeType, varSubType, bolListen As Boolean, bolSkip As Boolean
    Dim sMsgText$
    Set wks = ActiveSheet
    iSh = 0
    ReDim arrShData(1 To 7, 0 To 0)
    arrShData(1, iSh) = "Name"
    arrShData(2, iSh) = "sichtbar"
    arrShData(3, iSh) = "Zelle linksoben"
    arrShData(4, iSh) = "Breite"
    arrShData(5, iSh) = "Höhe"
    arrShData(6, iSh) = "OnActio-Makro"
    arrShData(7, iSh) = "Type"
    sInfo = ActiveWorkbook.Name & "!" & wks.Name & " - Schaltflächen"
    For Each objSh In wks.Shapes
    With objSh
    sName = .Name
    sTopLeft = .TopLeftCell.Address(False, False, xlA1)
    varHoehe = .Height
    varBreite = .Width
    bolVisible = .Visible
    varType = .Type
    bolListen = False
    sMakro = ""
    Select Case varType
    Case msoOLEControlObject
    If InStr(.OLEFormat.progID, "CommandButton") > 0 Then
    varSubType = "Active-X-Schaltfläche"
    bolListen = True
    End If
    Case msoFormControl
    Select Case .FormControlType
    Case xlButtonControl
    varSubType = "Formular-Schaltfläche"
    sMakro = .OnAction
    bolListen = True
    End Select
    End Select
    End With
    If bolListen = True Then
    iSh = iSh + 1
    ReDim Preserve arrShData(1 To 7, 0 To iSh)
    arrShData(1, iSh) = sName: sMsgText = "Name: " & sName
    arrShData(2, iSh) = IIf(bolVisible = -1, "Ja", "Nein"): _
    sMsgText = sMsgText & vbLf & "sichtbar: " & arrShData(2, iSh)
    arrShData(3, iSh) = sTopLeft: sMsgText = sMsgText & vbLf & "Zelle linksoben: " &  _
    sTopLeft
    arrShData(4, iSh) = varBreite: sMsgText = sMsgText & vbLf & "Breite: " & varBreite
    arrShData(5, iSh) = varHoehe: sMsgText = sMsgText & vbLf & "Höhe: " & varHoehe
    arrShData(6, iSh) = sMakro: sMsgText = sMsgText & vbLf & "OnActio-Makro: " & sMakro
    arrShData(7, iSh) = varSubType: sMsgText = sMsgText & vbLf & "Type: " & varSubType
    If bolSkip = False Then
    If MsgBox(sMsgText, vbOKCancel, "Shape-Infos Blatt: " & wks.Name) = vbCancel  _
    Then _
    bolSkip = True
    End If
    End If
    Next
    If iSh = 0 Then
    MsgBox "Im aktiven Tabellenblatt gibt es keine Schaltflächen!"
    Else
    If MsgBox("Sollen die Daten zu allen Schaltflächen in einem separaten Blatt " _
    & "angezeigt werden?", vbQuestion + vbOKCancel) = vbOK Then
    Application.Workbooks.Add Template:=xlWBATWorksheet
    ActiveWorkbook.Sheets(1).Cells(1, 1) = sInfo
    ActiveWorkbook.Sheets(1).Cells(3, 1).Resize(iSh + 1, 7) = _
    Application.WorksheetFunction.Transpose(arrShData)
    ActiveWorkbook.Sheets(1).UsedRange.EntireColumn.AutoFit
    End If
    End If
    End Sub
    

    Anzeige
    AW: Ein toller Code, Franz ...
    01.12.2018 09:01:14
    Dieter(Drummer)
    Guten Morgen Franz,
    ich bin nicht der Fragende, aber ich habe deinen Code ausprobiert unnd er ist einfach toll und funktioniert prima.
    Danke ... und Gruß, Dieter(Drummer)
    AW: Ein toller Code, Franz ...
    01.12.2018 13:05:04
    Karl-Heinz
    Hallo Franz,
    dem kann ich mich nur anschließen :-)
    viele Grüße aus Somborn
    Karl-Heinz
    AW: Kleiner Hinweis ...
    01.12.2018 14:11:48
    Dieter(Drummer)
    ... es wird auch angezeigt, ob ein Button (CommandButton)ausgeblendet ist ;-).
    Einfach toll ...
    Gruß, Dieter(Drummer)
    AW: Anzeige Information zu Schaltflächen Formen
    02.12.2018 02:55:19
    fcs
    hallöchen,
    hier der Code mit 2 Ergänzungen
    1. Die Beschriftung der Schaltflächen wird angezeigt.
    2. Andere Formen (Rechteck, Kreis etc) denen ein Makro zugewiesen ist werden ebenfalls gelistet.
    Gruß
    Franz
    Sub StatusSchaltflaechen()
    Dim wks As Worksheet
    Dim objSh As Shape
    Dim sName$, bolVisible, sTopLeft$, varHoehe, varBreite, sMakro$, sInfo$, sBeschriftung$
    Dim arrShData(), iSh As Integer
    Dim varType As MsoShapeType, varSubType, bolListen As Boolean, bolSkip As Boolean
    Dim sMsgText$
    Set wks = ActiveSheet
    iSh = 0
    ReDim arrShData(1 To 8, 0 To 0)
    arrShData(1, iSh) = "Name"
    arrShData(2, iSh) = "Beschriftung"
    arrShData(3, iSh) = "sichtbar"
    arrShData(4, iSh) = "Zelle linksoben"
    arrShData(5, iSh) = "Breite"
    arrShData(6, iSh) = "Höhe"
    arrShData(7, iSh) = "OnActio-Makro"
    arrShData(8, iSh) = "Type"
    sInfo = ActiveWorkbook.Name & "!" & wks.Name & " - Schaltflächen"
    For Each objSh In wks.Shapes
    With objSh
    sName = .Name
    sTopLeft = .TopLeftCell.Address(False, False, xlA1)
    varHoehe = .Height
    varBreite = .Width
    bolVisible = .Visible
    varType = .Type
    bolListen = False
    sMakro = ""
    sBeschriftung = ""
    Select Case varType
    Case msoOLEControlObject
    If InStr(.OLEFormat.progID, "CommandButton") > 0 Then
    varSubType = "Active-X-Schaltfläche"
    sBeschriftung = .OLEFormat.Object.Object.Caption
    bolListen = True
    End If
    Case msoFormControl
    Select Case .FormControlType
    Case xlButtonControl
    varSubType = "Formular-Schaltfläche"
    sMakro = .OnAction
    sBeschriftung = .TextFrame.Characters.Text
    bolListen = True
    End Select
    Case msoAutoShape 'andere Formen mit Makro-Zuweisung
    If .OnAction  "" Then
    varSubType = "allgemeine Form"
    sBeschriftung = .TextFrame.Characters.Text
    sMakro = .OnAction
    bolListen = True
    End If
    End Select
    End With
    If bolListen = True Then
    iSh = iSh + 1
    ReDim Preserve arrShData(1 To 8, 0 To iSh)
    arrShData(1, iSh) = sName: sMsgText = "Name: " & sName
    arrShData(2, iSh) = sBeschriftung: sMsgText = _
    sMsgText & vbLf & "Beschriftung: " & sBeschriftung
    arrShData(3, iSh) = IIf(bolVisible = -1, "Ja", "Nein"): _
    sMsgText = sMsgText & vbLf & "sichtbar: " & arrShData(3, iSh)
    arrShData(4, iSh) = sTopLeft: sMsgText = sMsgText & vbLf & "Zelle linksoben: " _
    & sTopLeft
    arrShData(5, iSh) = varBreite: sMsgText = sMsgText & vbLf & "Breite: " & varBreite
    arrShData(6, iSh) = varHoehe: sMsgText = sMsgText & vbLf & "Höhe: " & varHoehe
    arrShData(7, iSh) = sMakro: sMsgText = sMsgText & vbLf & "OnActio-Makro: " & sMakro
    arrShData(8, iSh) = varSubType: sMsgText = sMsgText & vbLf & "Type: " & varSubType
    If bolSkip = False Then
    If MsgBox(sMsgText, vbOKCancel, "Shape-Infos Blatt: " & wks.Name) = vbCancel _
    Then bolSkip = True
    End If
    End If
    Next
    If iSh = 0 Then
    MsgBox "Im aktiven Tabellenblatt gibt es keine Schaltflächen!"
    Else
    If MsgBox("Sollen die Daten zu allen Schaltflächen in einem separaten Blatt " _
    & "angezeigt werden?", vbQuestion + vbOKCancel) = vbOK Then
    Application.Workbooks.Add Template:=xlWBATWorksheet
    ActiveWorkbook.Sheets(1).Cells(3, 1).Resize(iSh + 1, 8) = _
    Application.WorksheetFunction.Transpose(arrShData)
    ActiveWorkbook.Sheets(1).UsedRange.EntireColumn.AutoFit
    ActiveWorkbook.Sheets(1).Cells(1, 1) = sInfo
    End If
    End If
    End Sub
    

    Anzeige
    AW: Franz, einfach toll ...
    02.12.2018 10:53:54
    Dieter(Drummer)
    Hallo Franz,
    danke, das ist prima und es kann jetzt alles angezeigt werden.
    Noch einen schönen 1. Advent und Gruß,
    Dieter(Drummer)

    Links zu Excel-Dialogen

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige