Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
484to488
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
484to488
484to488
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Prozedur löschen

Prozedur löschen
13.09.2004 20:23:59
elian
Hallo !
Ich habe per addshape ein Button generieren lassen, dieser bekommt automatisch einen Verweis zu einer Prozedur.
Desweiteren gibt es eine Speichern Prozedur, die das aktuelle Arbeitsblatt speichert. Genau hier liegt das Problem.
Der o.g. Button wird in diesem Arbeitsblatt angezeigt, soll aber nicht mit gespeichert werden.
Wollte versuchen die Prozedur, die den Button erzeugt vor dem Speichern löschen, hat aber nicht funktioniert.
Die u.g. Prozedur soll mehr oder weniger vor dem Speichern aus dem Blatt gelöscht werden, aber nach dem Speichervorgang wieder existieren, damit sie nur in der neuen Datei nicht existiert.

Sub zbutton()
Dim document As Object
Dim zaehler As String
Set document = Worksheets(1)
document.Shapes.AddShape(msoShapeActionButtonCustom, 550, 10, 110, 23) _
.TextFrame.Characters.Text = "zurück zur Eingabe"
zaehler = Tabelle1.Shapes.Count
document.Shapes("AutoShape" & " " & zaehler).OnAction = "buttoneingabe"
End Sub

Danke !
Gruß
elian
P.S.: Bin totaler Anfänger, erst seit letzter Woche mit VBA beschäftigt.

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Prozedur löschen
Ramses
Hallo
erstelle das Makro so in einem Modul
Option Explicit
Global myButton As Object
Sub zbutton()
Dim document As Object
Dim zaehler As Integer
Set document = Worksheets(1)
zaehler = Tabelle1.Shapes.Count
Set myButton = document.Shapes.AddShape(msoShapeActionButtonCustom, 550, 10, 110, 23)
With myButton
.Name = "btnEingabe"
.TextFrame.Characters.Text = "zurück zur Eingabe"
.OnAction = "buttoneingabe"
End With
End Sub
Sub Test_Delete()
myButton.Delete
End Sub
Die Anweisung
myButton.Delete
kannst du auch in das "Workbook_BeforeSave" Ereignis einbauen:
Option Explicit

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
'Entfernen des Buttons
myButton.Delete
'Speichern unter anderem Namen
ThisWorkbook.SaveCopyAs "c:\To_Delete2.xls"
'eigentlichen Speichervorgang abbrechen
Cancel = True
'Neues einbauen des Buttons
Call zbutton
End Sub

Gruss Rainer
Anzeige
AW: Prozedur löschen
14.09.2004 18:56:50
elian
Hallo Rainer !
Erst mal vielen Dank für die Hilfe !!
Habs erst mal ohne die before save prozedur versucht, aber ich bekomme immer die Fehlermeldung 1004 - Anwendungs- objektdefinierter Fehler, wenn die Prozedur mit dem Befehl mybutton.delete aufgerufen wird. Sprich die Fehlermeldung bezieht sich auf die mybutton.delete Anweisung.
Gruß
elian

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige