Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1720to1724
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
VBA Button einfügen
06.11.2019 09:34:07
Tom
Hallo,
ich möchte über VBA einen Button in mehrere Tabellenblätter einfügen, der bei Betätigung ein Makro aufruft. Der Button soll dabei auf dem ersten Tabellenblatt erstellt und für die restlichen kopiert werden.
Bei der Erstausführung bekomme ich allerdings den Laufzeitfehler 1004: "Die Characters-Eigenschaft des Button-Objektes kann nicht zugewiesen werden".
Lösche ich anschließend den eingefügten, aber unbeschrifteten Button aus dem Tabellenblatt und führe das Makro erneut aus, funktioniert alles einwandfrei.
Dim iCol As Integer
Dim oButton As Object
[...]
If intCol = 1 Then
Set oButton = Sheets(Tabelle1.Cells(1, iCol).Value).Buttons.Add(iLeftButton, iTopButton, iWidthButton, iHeightButton)
oButton.Characters.Text = "Standardwerte wiederherstellen"
oButton.Name = "ButtonStdWerte"
oButton.OnAction = "'" & ThisWorkbook.Name & "'!" & "StandardwerteWiederherstellen.StandardwerteWiederherstellen"
Else
Sheets(Tabelle1.Cells(1, 1).Value).Buttons("ButtonStdWerte").Copy
With Sheets(Tabelle1.Cells(1, iCol).Value)
.Paste
.Shapes(.Shapes.Count).Top = iTopButton
.Shapes(.Shapes.Count).Left = iLeftButton
End With
End If
Ich hoffe, mir kann hier jemand weiterhelfen.
Vielen Dank und Grüße
Tom

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Button einfügen
06.11.2019 09:37:06
Tom
EDIT:
Die Variablen zur Positionierung & Dimensionierung deklarieren sich wie folgt:
Dim iLeftButton As Integer
Dim iTopButton As Integer
Dim iHeightButton As Integer
Dim iWidthButton As Integer
iLeftButton = 693
iTopButton = 81
iHeightButton = 35
iWidthButton = 110
Die If-Anweisung lautet zudem If iCol = 1 Then ...
AW: VBA Button einfügen
06.11.2019 09:39:03
Nepumuk
Hallo Tom,
so:
oButton.Text = "Standardwerte wiederherstellen"
Gruß
Nepumuk
AW: VBA Button einfügen
06.11.2019 09:43:55
Tom
Hallo Nepomuk,
vielen Dank für deinen Vorschlag.
Aber auch das funktioniert leider nur genau wie zuvor.
Laufzeitfehler 1004: "Die Text-Eigenschaft des Button-Objektes kann nicht zugewiesen werden."
Anschließend lösche ich den Button wieder und führe es erneut aus, worauf alles funktioniert.
Auch "oButton.Caption = ..." bringt das gleiche Ergebnis.
Viele Grüße
Tom
Anzeige
AW: VBA Button einfügen
06.11.2019 09:46:58
Nepumuk
Hallo Tom,
kann ich nicht nachvollziehen. Bei mir klappt das so von Anfang an.
Gruß
Nepumuk
AW: VBA Button einfügen
06.11.2019 10:56:24
Tom
Hallo Nepumuk,
ich habe mittlerweile rausgefunden, dass es bei mir auch funktioniert, wenn ich es in Excel ausführe.
Das Problem ist allerdings, dass ich das Makro über NI LABView aufrufe. Da wiederum tritt dieser Fehler nach wie vor auf. (Andere Makros werden dadurch allerdings problemlos ausgeführt ^^)
Schätze, dann liegt mein Problem allerdings außerhalb dieses Forums.
Außer es findet sich zufällig jemand, der Erfahrungen mit der Konnektivität zwischen LABView und Excel hat ? ;-)
Viele Grüße und nochmal besten Dank
Tom
Anzeige
AW: VBA Button einfügen
06.11.2019 11:17:36
Nepumuk
Hallo Tom,
füge vor dem Einfügen der Beschriftung mal ein DoEvents ein.
Gruß
Nepumuk
AW: VBA Button einfügen
06.11.2019 11:29:59
Tom
Hallo Nepumuk,
ändert leider auch nichts...
Außerdem bekomme ich den Fehler auch, wenn ich zuerst oButton.Name oder oButton.OnAction ausführe.
Dann eben mit "Die Name-Eigenschaft..." bzw. "Die OnAction-Eigenschaft...".
Habe auch schon eine Arbeitsmappe erstellt, die nur ein Makro zum Erstellen eines Buttons enthält und dieses über ein Test-VI in LabVIEW ausgeführt - das funktioniert auch.
Viele Grüße
Tom
AW: VBA Button einfügen
08.11.2019 10:53:38
Tom
Hallo Community,
Hallo Nepumuk,
habe das Problem nun mehr oder minder durch Zufall gelöst.
In LabVIEW wurde die Excel-Arbeitsmappe minimiert geöffnet, wodurch der Button nicht zugewiesen werden konnte. Öffne ich die Mappe nun normal bzw. maximiert, werden alle Buttons eingefügt, beschriftet, etc..
Mir ist die Lösung zwar nicht ganz ersichtlich, vor allem, was die Fenstergröße der Arbeitsmappe mit der Zuweisung der Buttoneigenschaft zu tun hat, aber solange es funktioniert, werde ich mich nicht weiter beklagen.
Grüße und schönes Wochenende
Tom
Anzeige

255 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige