Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1956to1960
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

Buttons.add

Buttons.add
08.12.2023 12:03:29
MMRH
Hi,

ich habe in meinem Code zwei Subs:



Sub Schaltfläche()
With Sheets("Datengrundlage").Range("B:B").Select
End With
Dim knopf_pivot As Range
Set knopf_pivot = Range("B1:B1")
knopf_pivot.Select

'ActiveSheet.Buttons.Add(1500.2, 25.8, 124.8, 110.4).Select
ActiveSheet.Buttons.Add(knopf_pivot.Left, knopf_pivot.Top, knopf_pivot.Width, knopf_pivot.Height / 2).Select
Selection.OnAction = "Pivotgrundlage"
Selection.Characters.Text = "Pivot vorbereiten."
'Range("O21").Select


End Sub


und



Sub ManuelleeingabeSchaltfläche()
With Sheets("Datengrundlage").Range("D:D").Select
End With

Dim Knopf_manuell As Range
Set Knopf_manuell = Range(Cells(1, 4), Cells(1, 4))
Knopf_manuell.Select
Range("D1").Select
'ActiveSheet.Buttons.Add(1500.2, 175.8, 124.8, 110.4).Select
ActiveSheet.Buttons.Add(Knopf_manuell.Width, Knopf_manuell.Top, Knopf_manuell.Left, Knopf_manuell.Height / 2).Select
Selection.OnAction = "ManuelleVorschläge"
Selection.Characters.Text = "Vorschläge."
'Range("O21").Select


End Sub


Die erste Sub funktioniert wie erwartet. Ich bekomme einen Knopf in Zelle B1. Die zweite Sub, die m.E. genau gleich funktionieren sollte, liefert mir einen Button der über die Spalten B und D hinausragt. Ich hatte aber erwartet einen Knopf zu bekommen, der exakt in Zelle D1 passt. Warum funktioniert das nicht?

Danke & Grüße

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Buttons.add
08.12.2023 12:40:45
daniel
Hi
wenn du zwei Subs, die im Prinzip das gleiche machen sollen, und von denen eine funktioniert und die andere nicht, dann sollte man immer die Codes genau vergleichen und auf eventuelle Unterschiede achten.

ich lege die beiden relevanten Zeilen mal nebeneinander und markiere den Unterschied:

ActiveSheet.Buttons.Add(knopf_pivot.Left, knopf_pivot.Top, knopf_pivot.Width, knopf_pivot.Height / 2).Select
ActiveSheet.Buttons.Add(Knopf_manuell.Width, Knopf_manuell.Top, Knopf_manuell.Left, Knopf_manuell.Height / 2).Select

du gibst im zweiten Fall die Werte für .Left und .Width einfach an der falschen Stelle ein.
Gruß Daniel
Anzeige
AW: Buttons.add
08.12.2023 13:26:38
MMRH
Hi. Danke. Was für eine Zeitverschwendung. Ich hatte die Werte .left, die Bezug auf die Größe nehmen, als Angabe für die Position des Buttons missverstanden.
AW: Buttons.add
08.12.2023 14:05:37
daniel
für die Position des Buttons ist entweder die richtige Reihenfolge, in der du die Werte angibst, relevant (Left, Top, Width, Heigth)
oder du musst die Parameter benennen: (Left:=123, Top:=456, Width:=789, Height:=987)
bei benannten Parametern ist die Reihenfolge egal.

Wo die Werte herkommen, spielt für die Verwendung keine Rolle xxx.Left ist eine einfache Zahl, genauso wie xxx.Width,

Gruß Daniel

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige