Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Command Button verschieben sich

Forumthread: Command Button verschieben sich

Command Button verschieben sich
17.01.2014 08:43:15
Mirko
Hallo zusammen,
ich habe in Excel 2007 eine Datei erstellt mit Startseite wo viele Command Button sind, diese habe ich per Makro an eine feste Stelle gesetzt.
With Sheets("Startseite")
Set rng = .Range("B4")
With .OLEObjects("CommandButton6")
.Top = rng.Top
.Left = rng.Left
End With
Nun habe ich die Herausforderung, das dies beim speichern und nutzen auf Excel 2003 nicht mehr funktioniert, dort sind die Button alle verschoben.
Wer kann mir hier einen Rat geben und helfen, wie ich dies auf Excel 2003 zum laufen bekomme.
DANKE und Gruss Mirko

Anzeige

29
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Command Button verschieben sich
17.01.2014 10:26:40
Beverly
Hi Mirko,
bei den Excelversionen vor 2007 gab es das Problem mit dem Verschieben und der Größenänderung von Steuerelementen noch nicht, du musst dort also gar keinen Code verwenden. Schreibe deinen Code für das positionieren so, dass er nur dann ausgeführt wird, wenn die Excelversion &gt 2007 ist:
If Val(Application.Version) > 11 Then


Anzeige
AW: Command Button verschieben sich
17.01.2014 11:59:06
Mirko
Hallo Karin,
Danke für deine schnelle Hilfe - aber das war noch nicht die Lösung. Schade
Die Button stehen solange an der richtigen Stelle bis man eine Explorer Seite geöffnet hat oder eine andere Aktivität die mit dem Explorer zu tun hat gamacht hat -- erst dann verschieben sich die Buttons etwas übereinander -- heisst irgend wie blähen sich die Buttons auf und überschneiden sich irgendwie sieht dies komisch aus - keine klare Abgrenzung (höhe und breite der Button ändern sich.
ich hoffe ich habe jetzt alles beschrieben dazu.
DANKE weiterhin im voraus

Anzeige
AW: Command Button verschieben sich
17.01.2014 12:04:36
Beverly
Hi Mirko,
tritt dieses Problem auch auf wenn du Excel2003 verwendest oder nur in Excel2007?


AW: Command Button verschieben sich
17.01.2014 12:59:02
Mirko
Hallo Karin,
dieses Problem tritt nur in 2003 auf.
VG Mirko

Anzeige
AW: Command Button verschieben sich
17.01.2014 13:25:50
Beverly
Hi Mirko,
nochmal zur Klarstellung: ich meine das Verschieben der Button, nicht den Fehler im Code.


AW: Command Button verschieben sich
17.01.2014 13:30:58
Mirko
Hi Karin,
ja die Button verschieben sich nur wenn ich auf 2003 runte gespeichert habe - in 2007 ist diese Datei erstellt und dort funktioniert sie einwandfrei.
VG Mirko

Anzeige
AW: Command Button verschieben sich
17.01.2014 13:38:38
Beverly
Hi Mirko,
irgendwie reden wir hier aneinander vorbei. Nochmal ganz langsam:
- wann wird der Code ausführt - beim Öffnen der Arbeitsmappe?
- der Code löst keinen Laufzeitfehler aus in 2003?
- die Buttons verschieben sich in 2003 trotz Code?
- was passiert, wenn in 2003 überhaupt kein Positionierungs-Code ausgeführt wird - verschieben sich die Buttons trotzdem?


Anzeige
AW: Command Button verschieben sich
17.01.2014 13:46:08
Mirko
Hallo Karin
- wann wird der Code ausführt - beim Öffnen der Arbeitsmappe?
korrekt
- der Code löst keinen Laufzeitfehler aus in 2003?
nein
- die Buttons verschieben sich in 2003 trotz Code?
ja
- was passiert, wenn in 2003 überhaupt kein Positionierungs-Code ausgeführt wird - verschieben sich die Buttons trotzdem?
ja
Ich hoffe du kannst mir helfen, da dies sehr nervig ist.
VG Mirko

Anzeige
AW: Command Button verschieben sich
17.01.2014 14:22:15
Beverly
Hi Mirko,
könntest du die Mappe mal hochladen?
Die Button sind bereits direkt nach dem Öffnen der Arbeitsmappe verschoben? Wenn nicht, wann geschieht es dann?


AW: Command Button verschieben sich
17.01.2014 14:43:39
Mirko
Hallo Karin,
sorry die Mappe ist zu groß lässt er mich nicht hochladen. (mittlerweile fast 3MB.
nein nach dem Öffnen ist alles schick, aber wenn ich dann z.B. eine Internet Anwendung nutze und wieder zurück in die Mappe springe sind die Buttons so komisch.
VG Mirko

Anzeige
AW: Command Button verschieben sich
17.01.2014 14:53:53
Beverly
Hi Mirko,
schreibe den Code noch einmal in das Activate-Ereignis des Tabellenblattes - vielelicht hilft das.


AW: Command Button verschieben sich
17.01.2014 15:20:15
Mirko
Hallo Karin,
hilft auch nicht -- ich bin am verzweifeln -- jetzt kam aber auch noch "Kompilierungsfehler" in "Diese Arbeitsmappe"
Hast du noch einen Tip für mich?
VG Mirko

Anzeige
AW: Command Button verschieben sich
17.01.2014 15:29:43
Beverly
Hi Mirko,
zu dem Kompilierungsfehler kann ich niochts sage, denn ich kenne den Code nicht.


AW: Command Button verschieben sich
17.01.2014 15:30:59
Mirko
Hallo Karin,
ich mache gerade Screenshots zu der Mappe und lade diese dann hoch, vielleciht kannst du dann helfen.
VG Mirko

Anzeige
AW: Command Button verschieben sich
17.01.2014 16:29:03
Beverly
Hi Mirco,
ich denke, die einzige Abhilfe schafft, wenn du anstatt der ActiveX-Steurelemente Formularsteuerelemente verwendest.


AW: Command Button verschieben sich
20.01.2014 16:17:00
Mirko
Hallo KArin,
kann ich die Elemente einfach austauschen? Bleiben die Makros dann weiterhin bestehen oder muss dies alles angepasst werden?
VG Mirko

Anzeige
AW: Command Button verschieben sich
20.01.2014 16:23:28
Beverly
Hi Mirko,
im Gegensatz zu den ActiveX-Steuerelementen müssen die Formular-Steuerelemente mit einem Makro verknüpft werden - dieses steht in einem allgemeinen Modul. Eventuell musst du den code auch noch anpassen.


Anzeige
AW: Command Button verschieben sich
21.01.2014 10:58:11
Mirko
Hi Karin,
kann ich denn meinen Code auch für die Formular-Steuerelemente nutzen? muss ich dann für jeden Button ein eigenes Modul haben?
VG Mirko

AW: Command Button verschieben sich
21.01.2014 11:18:35
Beverly
Hi Mirko,
den Code kannst du prinzipiell schon nutzen, aber du musst ihn eben in ein (oder mehrere) Makro(s) in einem allgemeinen Modul schreiben. Du kannst auch für alle Schalter ein gemeinsames Makro in einem allgemeinen Modul nutzen. Schau dir dazu mal das angehängte prinzipielle Beispiel an.
https://www.herber.de/bbs/user/88919.xlsm


Anzeige
AW: Command Button verschieben sich
22.01.2014 08:21:02
Mirko
Hi karin,
ich denke dies verstanden zu haben, werde dies mal probeiren und hier posten.
VG Mirko

Widerspruch
17.01.2014 14:52:00
Rudi
Hallo Karin,
bei den Excelversionen vor 2007 gab es das Problem mit dem Verschieben und der Größenänderung von Steuerelementen noch nicht,
das stimmt nicht. ActivX-Steuerelemente haben schon immer einen Knall.
Ich hab schon unter XP CommandButtons bei jedem Klick in der Größe und Position korrigiert.
Gruß
Rudi

Anzeige
AW: Widerspruch nur teilweise korrekt
17.01.2014 15:14:05
Beverly
Hi Rudi,
ja, stimmt aber nur teilweise: es waren die ActiveX-Steuerelemente, mit denen es Problem gab, mit den Formularsteuerlementen dagegen nicht.


AW: Widerspruch nur teilweise korrekt
17.01.2014 15:22:02
Rudi
Hallo Karin,
es waren die ActiveX-Steuerelemente, mit denen es Problem gab,
genau das habe ich geschrieben.
Da er die CommandButtons als OleObject anspricht, können es keine Formularsteuerelemente sein.
Gruß
Rudi

Anzeige
AW: Widerspruch nur teilweise korrekt
17.01.2014 15:36:21
Beverly
Hi Rudi,
klar, mann kann letzendlich auch noch den I-Punkt zerteilen...


tschuldigung, aber....
17.01.2014 16:20:23
selli
hallo karin,
...wenn ich an die optionfelder bei den formularsteuerelementen denke wird mir schlecht.
sorry, wenn ich auch noch meinen senf dazu gebe.
gruß
selli

Anzeige
Weshalb...
17.01.2014 17:23:38
Beverly
Hi Selli,
eigentlich?


AW: Weshalb...
20.01.2014 08:41:24
selli
hallo karin,
manchmal möchte man eben auch formulare erstellen die einigermaßen ansprechend aussehen.
checkboxen und optionsfelder behalten zwar ihre position, verändern aber permanent ihr aussehen beim aktivieren bzw. deaktivieren. und ich meine nicht den haken oder den punkt der dann hinzukommt.
es betrifft vor allem schriftgrößen und hintergrundfarben.
diese erfahrung habe ich nunmal leider gemacht.
gruß
selli

Anzeige
AW: Weshalb...
20.01.2014 08:54:06
Beverly
Hi Selli,
das passiert bei ActiveX-Steuerelementen, aber nicht bei Formular-Steuerelementen.


Tja, da liegt Beverly mit ihrer Empfehlung ...
17.01.2014 17:20:29
Luc:-?
…wohl richtig, Mirko,
wobei bei einfachen Klick-Buttons noch nicht 1× FormularSteuerElemente erforderlich sind, einfache Zeichnungsobjekte tuen es idR auch. Die kann man auf verschiedenste Weise sogar bzw ebenfalls animieren — verursacht nur etwas zusätzlichen VBA-Aufwand.
Gruß Luc :-?
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Command Button in Excel richtig positionieren


Schritt-für-Schritt-Anleitung

Um Command Buttons in Excel korrekt zu positionieren und sicherzustellen, dass sie sich nicht verschieben, befolge diese Schritte:

  1. Öffne deine Excel-Datei und gehe zum entsprechenden Arbeitsblatt, wo die Command Buttons platziert sind.
  2. Verwende den folgenden VBA-Code, um die Position der Buttons festzulegen. Dieser Code sollte im Workbook_Open-Ereignis oder Worksheet_Activate-Ereignis platziert werden:
    Private Sub Workbook_Open()
        With Sheets("Startseite")
            Set rng = .Range("B4")
            With .OLEObjects("CommandButton6")
                .Top = rng.Top
                .Left = rng.Left
            End With
        End With
    End Sub
  3. Testen: Speichere die Datei und öffne sie in Excel 2003, um zu überprüfen, ob die Buttons korrekt positioniert sind.

Häufige Fehler und Lösungen

  • Buttons verschieben sich nach dem Speichern: Stelle sicher, dass der Code für das Positionieren nur bei Excel-Versionen > 2007 ausgeführt wird. Beispiel:

    If Val(Application.Version) > 11 Then
        ' Code zum Positionieren
    End If
  • Kompilierungsfehler: Dies kann auftreten, wenn der Code nicht korrekt verknüpft ist. Überprüfe deine Makros und stelle sicher, dass sie im richtigen Modul platziert sind.

  • Buttons überschneiden sich: Dies geschieht oft, wenn ein anderer Prozess (z.B. Internet Explorer) während der Nutzung geöffnet wird. Stelle sicher, dass keine anderen Anwendungen geöffnet sind, während Du an der Excel-Datei arbeitest.


Alternative Methoden

Wenn du Schwierigkeiten mit ActiveX-Steuerelementen hast, kannst du Formularsteuerelemente verwenden. Diese bieten eine stabilere Möglichkeit, Buttons in Excel zu verwalten und benötigen weniger Anpassungen. Du musst jedoch die Makros entsprechend anpassen.

  • Formularsteuerelemente verwenden: Diese sind einfacher in der Handhabung und verändern ihre Position nicht so leicht wie ActiveX-Steuerelemente.

Praktische Beispiele

Hier sind einige praktische Beispiele, wie du die Position der Buttons in verschiedenen Szenarien festlegen kannst:

  • Beispiel 1: Bei Öffnen der Datei:

    Private Sub Workbook_Open()
        Call PositionButtons
    End Sub
    
    Sub PositionButtons()
        With Sheets("Startseite")
            .OLEObjects("CommandButton1").Top = 100
            .OLEObjects("CommandButton1").Left = 50
        End With
    End Sub
  • Beispiel 2: Positionierung beim Aktivieren des Arbeitsblatts:

    Private Sub Worksheet_Activate()
        Call PositionButtons
    End Sub

Tipps für Profis

  • Verwende relative Positionierung: Statt absoluter Pixelwerte kannst du die Position der Buttons relativ zu anderen Elementen setzen, um Verschiebungen zu vermeiden.

  • Verwalte die Sichtbarkeit: Wenn Buttons nicht sichtbar sein sollen, kannst du sie über VBA ausblenden, bevor du das Arbeitsblatt verlässt.

  • Teste regelmäßig: Teste Deine Makros in verschiedenen Excel-Versionen, um sicherzustellen, dass die Buttons überall korrekt dargestellt werden.


FAQ: Häufige Fragen

1. Warum verschieben sich die Buttons in Excel 2003? Die Buttons können sich aufgrund unterschiedlicher Handhabung von ActiveX-Steuerelementen in verschiedenen Excel-Versionen verschieben.

2. Kann ich den gleichen Code für Formularsteuerelemente verwenden? Ja, du kannst den Code anpassen und in einem allgemeinen Modul speichern, um ihn für Formularsteuerelemente zu nutzen.

3. Was soll ich tun, wenn ein Kompilierungsfehler auftritt? Überprüfe deinen Code auf Fehler und stelle sicher, dass alle Variablen und Objekte korrekt deklariert sind.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige