Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1168to1172
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
Inhaltsverzeichnis

Lfd. Nr. Schaltfläche zurücksetzen

Lfd. Nr. Schaltfläche zurücksetzen
Konni
Hallo Spezialisten,
ich habe eine Tabelle, wo beim Öffnen eine Schaltfläche integriert wird.
Mein Problem ist, dass bei jedem Öffnen die Nummer der Schaltfläche fortgeschrieben wird. Daher passt mein Code nicht mehr.
Wie kann man es anstellen, dass beim Öffen des Workbooks die Schaltfläche immer die gleiche Nummer erhält?
Vielen Dank für die Unterstützung!
Konni

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

Betreff
Benutzer
Anzeige
AW: Lfd. Nr. Schaltfläche zurücksetzen
23.07.2010 20:19:15
Tino
Hallo,
wenn ich dich richtig verstanden habe müsste es so gehen.
kommt als Code in DieseArbeitsmappe
Option Explicit 
 
Private Sub Workbook_Open() 
'Tabelle anpassen 
'Name der Schaltfläche anpassen 
Sheets("Tabelle1").Shapes("Schaltfläche 1").DrawingObject.Caption = "1" 
End Sub 
Gruß Tino
Anzeige
AW: Lfd. Nr. Schaltfläche zurücksetzen
23.07.2010 22:02:02
Konni
Hallo Tino,
leider klappt es nicht. Beim Öffnen der Mappe wird munter weitergezählt. Inzwischen bei Schaltfläche 21.
Wo wird eigentlich diese Nummer der Schaltfläche hinterlegt?
Hier mein Code, per Makrorekorder aufgezeichnet:
Private Sub Workbook_open()
ActiveSheet.Buttons.Delete
'Sheets("Tabelle1").Shapes("Schaltfläche 1").DrawingObject.Caption = "1" ' Tinos Tipp
ActiveSheet.Buttons.Add(600.75, 3, 169.5, 18.75).Select
ActiveSheet.Shapes("Button2").Select
Selection.Characters.Text = "KVDB löschen"
With Selection.Characters(Start:=1, Length:=12).Font
.Name = "Arial"
.FontStyle = "Fett"
.Size = 12
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = True
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 3
.Placement = xlFreeFloating
.PrintObject = False
End With
Range("A1").Select
End Sub
Vielen Dank für die Hilfe
Gruß: Konni
Anzeige
AW: Lfd. Nr. Schaltfläche zurücksetzen
23.07.2010 22:45:38
Tino
Hallo,
jetzt habe ich Dich verstanden was Du meinst.
Private Sub Workbook_Open()
With Sheets("Tabelle1") 'Tabelle anpassen
.Buttons.Delete
With .Buttons.Add(600.75, 3, 169.5, 18.75)
.Name = "Schaltfläche 1"
.Characters.Text = "KVDB löschen"
.Placement = xlFreeFloating
.PrintObject = False
With .Characters(Start:=1, Length:=12).Font
.Name = "Arial"
.FontStyle = "Fett"
.Size = 12
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = True
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 3
End With
End With
End With
End Sub
Gruß Tino
Anzeige
AW: Jetzt klappt's! Danke!
23.07.2010 23:14:46
Konni
Hallo Tino,
ich habe die Lösung gefunden. Vielen Dank nochmals für Deinen Einsatz!!
Gruß: Konni
und wie? ...
23.07.2010 23:32:56
Tino
Hallo,
interessant wäre für andere die auch ein solches Problem haben und diesen Beitrag lesen
wie Du es gelöst hast.
Gruß Tino
AW: und wie? ... so ...............!
24.07.2010 14:48:42
Konni
Hallo Tino,
nachstehend der Code. Die Nummer der Schaltfläche wurde zwar textmäßig überschrieben, ist aber immer Nr. 2.
Private Sub Workbook_open()
Range("B1").Select
With Selection
.HorizontalAlignment = xlLeft
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
ActiveSheet.Buttons.Delete
ActiveSheet.Buttons.Add(600.75, 3, 169.5, 18.75).Characters.Text = "K-VDB löschen" ' _
Schaltflächentext
ActiveSheet.Buttons.Select
With Selection.Characters(Start:=1, Length:=13).Font
.Name = "Arial"
.FontStyle = "Fett"
.Size = 14
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 3
End With
With Selection
.Placement = xlFreeFloating
.PrintObject = False
.OnAction = "KVDB_loeschen"
End With
Range("A2").Select
End Sub
Gruß: Konni
Anzeige
versuche grundsätzlich ohne Select auszukommen
24.07.2010 15:54:05
Tino
Hallo,
ich würde versuchen ohne Select auszukommen, dies braucht man nicht.
Zudem würde ich auch die Tabelle angeben,
was ist wenn Du die Datei öffnest und die aktive Tabelle ist eine andere? Dann knallt es.
Private Sub Workbook_Open()
'hier die Tabelle angeben 
With Sheets("Tabelle1")
    
    With .Range("B1")
        .HorizontalAlignment = xlLeft
        .VerticalAlignment = xlBottom
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With

    .Buttons.Delete
    
    With .Buttons.Add(600.75, 3, 169.5, 18.75)
        .Characters.Text = "K-VDB löschen"
        .Placement = xlFreeFloating
        .PrintObject = False
        .OnAction = "KVDB_loeschen"
        
        With .Characters(Start:=1, Length:=Len(.Characters.Text)).Font
            .Name = "Arial"
            .FontStyle = "Fett"
            .Size = 14
            .Strikethrough = False
            .Superscript = False
            .Subscript = False
            .OutlineFont = False
            .Shadow = False
            .Underline = xlUnderlineStyleNone
            .ColorIndex = 3
        End With
        

    End With
End With
End Sub
Gruß Tino
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige