none
Unerwünschte Sperrung einer Textbox aufheben RRS feed

  • Frage

  • Guten Morgen,

    ich habe ein gesperrtes Dokument, in das ich eine Textbox einfügen möchte, die ich dann frei beschreiben und verschieben kann.

    Dazu hebe ich zu Beginn des Makros die Sperrung auf, füge die Textbox ein und sperre das Dokument wieder.

    Sub Pos_Number()
    '
    ' Pos_Number Makro
    ' Adds a pos number to the drawing
    '
    '
        ActiveSheet.Unprotect Password:="1234"
        ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 235.9090551181, _
            327.2727559055, 19.0909448819, 20.454488189).Select
        Selection.ShapeRange.ShapeStyle = msoShapeStylePreset1
        With Selection.ShapeRange.Line
            .Visible = msoTrue
            .Weight = 1.5
        End With
        Selection.ShapeRange.TextFrame2.TextRange.ParagraphFormat.Alignment = _
            msoAlignCenter
        Selection.ShapeRange.TextFrame2.VerticalAnchor = msoAnchorMiddle
        Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "1"
        With Selection.ShapeRange(1).TextFrame2.TextRange.Characters(1, 1). _
            ParagraphFormat
            .FirstLineIndent = 0
            .Alignment = msoAlignCenter
        End With
        With Selection.ShapeRange(1).TextFrame2.TextRange.Characters(1, 1).Font
            .NameComplexScript = "+mn-cs"
            .NameFarEast = "+mn-ea"
            .Fill.Visible = msoTrue
            .Fill.ForeColor.ObjectThemeColor = msoThemeColorDark1
            .Fill.ForeColor.TintAndShade = 0
            .Fill.ForeColor.Brightness = 0
            .Fill.Transparency = 0
            .Fill.Solid
            .Size = 14
            .Name = "+mn-lt"
        End With
        Selection.Locked = msoFalse
        Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "1"
        With Selection.ShapeRange(1).TextFrame2.TextRange.Characters(1, 1). _
            ParagraphFormat
            .FirstLineIndent = 0
            .Alignment = msoAlignCenter
        End With
        With Selection.ShapeRange(1).TextFrame2.TextRange.Characters(1, 1).Font
            .NameComplexScript = "+mn-cs"
            .NameFarEast = "+mn-ea"
            .Fill.Visible = msoTrue
            .Fill.ForeColor.ObjectThemeColor = msoThemeColorDark1
            .Fill.ForeColor.TintAndShade = 0
            .Fill.ForeColor.Brightness = 0
            .Fill.Transparency = 0
            .Fill.Solid
            .Size = 14
            .Name = "+mn-lt"
        End With
        ActiveSheet.Protect Password:="1234"
    End Sub

    In den Eigenschaften der Textbox ist eigentlich zu sehen, dass bei "gesperrt" und bei "Text sperren" jeweils keine Haken gesetzt sind, allerdings ist es trotzdem nicht möglich, den Text zu ändern. Die Box zu verschieben und in der Größe zu ändern ist aber möglich.

    Gibt es einen Befehl, mit dem ich nochmal extra die Sperrung des Inhaltes des Textfeldes aufheben kann?

    Vielen Dank und viele Grüße,

    Arne


    • Bearbeitet Arne93 Freitag, 29. August 2014 07:57
    Freitag, 29. August 2014 07:56

Alle Antworten

  • Hi Arne,

    mit Makros kenne ich mich nicht so aus - aber vielleicht kann ich trotzdem behilflich sein. :-)

    Wenn Du die Sperrung über die GUI machst, hast Du die Auswahl, ob im Dokument keine Änderungen oder Ausfüllen von Formularen möglich sein soll (es gibt noch weitere Optionen). Vielleicht musst Du diese Ausnahme noch in Deine Sperrung einbauen. Dein Makro sperrt ja einfach nur das Dokument, oder?


    Gruß
    Ben

    Wenn Dir meine Antwort hilft, markiere sie bitte entsprechend als Antwort! Danke! :-)

    Hinweis: Meine Posts werden "wie besehen" ohne jedwede Gewähr bereitgestellt, da menschliche, technische und andere Fehler nicht ausgeschlossen werden können.

    Freitag, 29. August 2014 08:21