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

Code+Button auf Blatt löschen per VBA

Code+Button auf Blatt löschen per VBA
18.02.2005 08:22:26
andreas
Guten Morgen,
möchte den Code und den Button auf meinem Tabellenblatt löschen, da ich es in eine andere Mappe verschiebe. Wie geht das per VBA?
Gruß und danke für jede Hilfe
Andi

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Code+Button auf Blatt löschen per VBA
18.02.2005 09:02:27
andreas
Hi,
habe folgendes Makro gefunden:

Sub entferneCodeUndButton()
'entfernt aus allen Tabellenblättern einer Mappe
'den Code und löscht einen Button auf den Tabellen.
Dim wkb As Workbook
Dim wks As Worksheet
Set wkb = ThisWorkbook  'wenn Löschung in dieser Mappe!
'sonst Mappe angeben! zB.: Workbooks("mappe.xls")
On Error GoTo ERRORHANDLER
For Each wks In wkb.Worksheets
With wkb.VBProject.VBComponents(wks.CodeName).CodeModule
.DeleteLines 1, .CountOfLines 'Code aus Tabelle entfernen
End With
wks.Shapes(1).Delete          'Schaltfläche entfernen
Next
ERRORHANDLER:
If Err.Number <> 0 Then
If Err.Number = -2147024809 Then 'kein Shape auf Tabelle!
Err.Clear
Resume Next
Else                             'sonstige Fehler
MsgBox "Fehler:" & vbLf & vbLf & Err.Description, vbCritical, "FEHLER"
End If
End If
End Sub

Wie kann ich es anpassen, dass es nur für ein Blatt gilt?
Gruß Andi
Anzeige
AW: Code+Button auf Blatt löschen per VBA
18.02.2005 09:18:10
Harald
Moin Andi,
probiers mal so. (Mit aktivem Tabellenblatt)

Sub entferneCodeUndButton()
'entfernt aus allen Tabellenblättern einer Mappe
'den Code und löscht einen Button auf den Tabellen.
Dim wkb As Workbook
Dim wks As Worksheet
Set wkb = ThisWorkbook  'wenn Löschung in dieser Mappe!
'sonst Mappe angeben! zB.: Workbooks("mappe.xls")
Set wks = ActiveSheet  ' oder Blattname angeben
On Error GoTo ERRORHANDLER
With wkb.VBProject.VBComponents(wks.CodeName).CodeModule
.DeleteLines 1, .CountOfLines 'Code aus Tabelle entfernen
End With
wks.Shapes(1).Delete          'Schaltfläche entfernen
ERRORHANDLER:
If Err.Number <> 0 Then
If Err.Number = -2147024809 Then 'kein Shape auf Tabelle!
Err.Clear
Resume Next
Else                             'sonstige Fehler
MsgBox "Fehler:" & vbLf & vbLf & Err.Description, vbCritical, "FEHLER"
End If
End If
End Sub

Gruß
Harald
Anzeige
AW: Code+Button auf Blatt löschen per VBA
18.02.2005 09:20:00
Josef
Hallo Andi!
Vorausgesetzt der Button ist das einzige Shape auf der Tabelle, so.

Sub entferneCodeUndButton()
Dim wks As Worksheet
Set wks = Sheets("Tabelle1") 'Tabellenname hier anpassen
On Error GoTo ERRORHANDLER
With ThisWorkbook.VBProject.VBComponents(wks.CodeName).CodeModule
.DeleteLines 1, .CountOfLines 'Code aus Tabelle entfernen
End With
wks.Shapes(1).Delete          'Schaltfläche entfernen
ERRORHANDLER:
If Err.Number <> 0 Then
If Err.Number = -2147024809 Then 'kein Shape auf Tabelle!
Err.Clear
Resume Next
Else                             'sonstige Fehler
MsgBox "Fehler:" & vbLf & vbLf & Err.Description, vbCritical, "FEHLER"
End If
End If
End Sub

Gruß Sepp
P.S.: Rückmeldung nicht vergessen!
Anzeige
AW: Code+Button auf Blatt löschen per VBA
18.02.2005 09:23:56
andreas
Hi,
auf dem Blatt sind 2 Buttons. Kann ich dann schreiben: wks.Shapes(2).Delete?
Danke für eure Hilfe!
Gruß Andi
AW: Code+Button auf Blatt löschen per VBA
18.02.2005 09:28:42
Josef
Hallo Andreas!
Entweder alle Shapes angeben, oder flexibler mit einer Schleife.

Sub entferneCodeUndButton()
Dim wks As Worksheet
Dim shp As Shape
Set wks = Sheets("Tabelle1") 'Tabellenname hier anpassen
On Error GoTo ERRORHANDLER
With ThisWorkbook.VBProject.VBComponents(wks.CodeName).CodeModule
.DeleteLines 1, .CountOfLines 'Code aus Tabelle entfernen
End With
For Each shp In wks.Shapes
shp.Delete          'Schaltfläche entfernen
Next
ERRORHANDLER:
If Err.Number <> 0 Then
If Err.Number = -2147024809 Then 'kein Shape auf Tabelle!
Err.Clear
Resume Next
Else                             'sonstige Fehler
MsgBox "Fehler:" & vbLf & vbLf & Err.Description, vbCritical, "FEHLER"
End If
End If
End Sub

Gruß Sepp
P.S.: Rückmeldung nicht vergessen!
Anzeige
AW: Code+Button auf Blatt löschen per VBA
18.02.2005 09:50:39
andreas
Hi,
brauche immer das aktive Blatt. Oder besser gesagt: KW1-KW52 werden eingefügt. Kann man schreiben: KW &*? Habe das mal mit dem aktiven Blatt probiert, leier ohne Erfolg:

Sub entferneCodeUndButton()
Dim wks As Worksheet
Dim shp As Shape
Set wks = ActiveSheet 'Sheets("Tabelle1") 'Tabellenname hier anpassen
On Error GoTo ERRORHANDLER
With ThisWorkbook.VBProject.VBComponents(wks.CodeName).CodeModule
.DeleteLines 1, .CountOfLines 'Code aus Tabelle entfernen
End With
For Each shp In wks.Shapes
shp.Delete          'Schaltfläche entfernen
Next
ERRORHANDLER:
If Err.Number <> 0 Then
If Err.Number = -2147024809 Then 'kein Shape auf Tabelle!
Err.Clear
Resume Next
Else                             'sonstige Fehler
MsgBox "Fehler:" & vbLf & vbLf & Err.Description, vbCritical, "FEHLER"
End If
End If
End Sub


Fehlermeldung: Index außerhalb des gültigen Bereichs...
Was muss ich anders machen?
Vielen Dank für deine super Hilfe, ich hoffe du hilfts mir nochmals...
Gruß Andi
Anzeige
danke, geschlossen
18.02.2005 09:54:38
andreas
Habe es noch selber rausgefunden. Vielen Dank.

82 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige