Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1448to1452
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

Frage zum Thema: Select-Befehl umgehen

Frage zum Thema: Select-Befehl umgehen
29.09.2015 10:49:00
Fabian
Hallihallo,
ich habe mal eine ganz grundsätzliche Frage zum Thema "Select".
Ich wollte gern, dass sich der Text meines Commandbuttons ändert, nachdem ich auf ihn geklickt habe und habe mir dazu den nötigen Code zunächst per Makro-Aufzeichnung gemopst. Da der Select-Befehl einen Prozess bekanntermaßen stark verlangsamt, je mehr man davon nutzt, wollte ich ihn umgehen. Und hier meine Frage: Warum funktioniert dieser Code:
ActiveSheet.Shapes.Range(Array("Button 1")).Select
Selection.Characters.Text = "Hallo"
aber dieser nicht:
ActiveSheet.Shapes.Range(Array("Button 1")).Characters.Text = "Hallo"
?
Funktioniert das nur in bestimmten Fällen nicht, sollte es eigentlich funktionieren oder funktioniert das nie? ^^
Ich hoffe, ihr könnt mir da weiterhelfen.
Liebe Grüße
Fabian

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

Betreff
Datum
Anwender
Anzeige
AW: Frage zum Thema: Select-Befehl umgehen
29.09.2015 11:35:59
Daniel
Hi
wenn du den Text des Buttons ändern willst, brauchst du diesen Code:
ActiveSheet.Shapes.Range(Array("Button 1")).TextFrame.Characters.Text = "Hallo"
bei Grafischen Objekten hat der Recorder eine Lücke und zeichnet leider nicht die vollständige Ojektkette mit auf.
bei den Excelspezifischen Objekten wie Workbook, Worksheet, Range, Cells usw. passt das eigentlich und du kannst im aufgezeichneten Code einfach das ".Select - Selection." löschen, um den Code zu überarbeiten.
warum das so ist, wissen wohl nur Billies Boys
allerdings ist meiner Erfahrung nach das Select bei Grafischen Objekten nicht so Zeitkritsich wie bei den Range-Objekten so dass man hier eher mit dem Select im Code leben kann.
Gruß Daniel

Anzeige
AW: Frage zum Thema: Select-Befehl umgehen
29.09.2015 12:00:53
JoWE
Hallo Fabian,
vermutlich hast Du da ein Formularsteuerelement eingesetzt?
So geht's mit den unterschiedlichen Steuerelementen auch ohne Select:

Sub changeButtonText1()
'hier handelt es sich um ein Formularsteuerlement
Sheets("Tabelle1").Shapes("Button 1").TextFrame.Characters.text = "Ich bin ein  _
Formularsteuerelement!"
End Sub


Sub changeButtonText2()
'Hier handelt es sich um ein ActiveX-Steuerelement
Sheets("Tabelle1").CommandButton1.Caption = "Ich bin ein ActiveX-Steuerelement!"
End Sub

Gruß Jochen
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige