PDA

Vollständige Version anzeigen : vba löschen mehrerer CommandButten


svensxx
29.09.2019, 18:30
Hallo @all,

folgendes Problem: beim betätigen eines CommandButtens (AktivX) soll dieser gelöscht werden. Es sind im Text verschiedene Butten verteilt die in unterschiedlicher Reihenfolge betätigt werden. ich nutze folgendes Script:

ActiveDocument.Shapes(1).Delete

das klappt aber nur beim ersten Butten. da nach dem speichern sich die Reihenfolge der Shapes ändert. und somit meist ein anderer Butten gelöscht wird. wenn ich Grafiken im Word-Dokument Lösche kann ich sie direkt ansprechen mit:

ActiveDocument.Shapes.Range(Array("Jens")).Delete

Dann wird die Grafik "jens" gelöscht. Gibt es eine Möglichkeit den Butten mit Namen zu versehen und ihn genau anzusprechen.

ich hab schon gegoogelt aber da finde ich nichts. in EXCEL ist das total einfach aber in Word scheint das nicht so einfach zu sein...



Vielen Dank im voraus.....

Gruß Sven

G.O.Tuhls
29.09.2019, 23:11
Dieser Multicrosspost wird in http://www.vba-forum.de/forum/View.aspx?ziel=53873-vba_löschen_mehrerer_CommandButten bereits behandelt.

Mase
30.09.2019, 06:40
@G.O. Thuls:

Ich habe eine Möglichkeit angeboten; die wurde entweder nicht verstanden oder war sonst nicht genehm.

Die temporäre Adresse wurde wieder gelöscht.
Ich werde mich nicht weiter um das Thema bemühen und bin raus.

svensxx
01.10.2019, 11:47
Ich habe eine Lösung gefunden. Für alle die das selbe Problem haben hier das Script:

für Command Butten VOR oder HINTER dem Text:

Sub Butten_Delete_Click()
'
Dim IShp As Shape
'
' Loschen Butten ButtenDeltele
'
For Each IShp In ActiveDocument.Shapes
If IShp.OLEFormat.Object.Name = "Butten_Delete" Then
IShp.Delete
Exit For
End If
Next
'
End Sub

für Command Butten im Text:

Sub Butten_Delete_Click()
'
Dim IShp As InlineShape
'
' Loschen Butten ButtenDeltele
'
For Each IShp In ActiveDocument.InlineShapes
If IShp.OLEFormat.Object.Name = "Butten_Delete" Then
IShp.Delete
Exit For
End If
Next
'
End Sub

Wenn ich einigen auf den Schlips getreten bin mit meiner Frage, bitte ich nachträglich um Entschuldigung...

VG
Sven

Mase
01.10.2019, 12:00
Wenn ich einigen auf den Schlips getreten bin mit meiner Frage, bitte ich nachträglich um Entschuldigung...
Passt.

Mein Wunsch für die Zukunft:
Beschäftige keine Helfer ohne gegenseitiger Kenntnis.