Thema Datum  Von Nutzer Rating
Antwort
22.05.2023 21:38:24 Reinhard Dopheide
Solved
22.05.2023 22:20:45 xlKing
Solved
Rot Button nach Ausführung des Codes löschen
24.05.2023 20:58:58 Gast60170
Solved
25.05.2023 09:20:36 Reinhard Dopheide
Solved

Ansicht des Beitrags:
Von:
Gast60170
Datum:
24.05.2023 20:58:58
Views:
299
Rating: Antwort:
 Nein
Thema:
Button nach Ausführung des Codes löschen

Hallo xlKing,

es scheint wohl nur mit InlineShapes zu funktionieren. Einen englischen Namen für den Button "vor den Text" konnte ich nicht finden, außer eben "Shape".

Dann habe ich noch einen Code gefunden:

ActiveDocument.InlineShapes(1).ConvertToShape

Den habe ich umgestellt:

ActiveDocument.Shapes(1).ConvertToInlineShape

Beide Codes funktionieren auch, also der Button wechselt die Position, wie er soll, aber dann kommt im VBA die Fehlermeldung:

"Wechsel in den Haltemodus ist zu diesem Zeitpunkt nicht möglich"

Und egal, ob ich auf "Fortfahren" oder auf "Beenden" klicke, springt er Code wieder auf Anfang.

.

.

.

Und jetzt klappt es doch!

Ich hatte den Code schrittweise über "F8" ausgeführt. Dann kommt tatsächlich die Fehlermeldung.

Aber wenn ich den Sub auf den Button lege, und von da starte, dann funktioniert er:

Private Sub CommandButton2_Click()

    Dim dialog As Object
    Dim pfad As String
    Dim datei As String
    pfad = "C:\Users\User\Downloads\000-23.docm"
    Set dialog = Application.FileDialog(msoFileDialogSaveAs)
    With dialog
    .InitialFileName = pfad
    .Show
    End With
    If dialog <> False Then dialog.Execute
    
    ActiveDocument.Shapes(1).ConvertToInlineShape
    

    '-----------------< btnTest_Click() >-----------------
    '*Delete Word Button, Option... ActiveX Controls
    '< init >
    Dim doc As Document
    Set doc = Application.ActiveDocument
    Selection.MoveStart
    '</ init >
     
    '----< @Loop: Controls >----
    '*loop all InlineShapes
    Dim objShape As InlineShape
    For Each objShape In doc.InlineShapes
    If objShape.Type = wdInlineShapeOLEControlObject Then
    '< Is_Control >
    '*delete Control
    objShape.Delete
    '< Is_Control >
    End If
    Next
    MsgBox "Jetzt klappts"

End Sub

Danke, das war Hilfe zur Selbsthilfe wink


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
22.05.2023 21:38:24 Reinhard Dopheide
Solved
22.05.2023 22:20:45 xlKing
Solved
Rot Button nach Ausführung des Codes löschen
24.05.2023 20:58:58 Gast60170
Solved
25.05.2023 09:20:36 Reinhard Dopheide
Solved