Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

mehrere Werte in Zwischenablage kopieren

Forumthread: mehrere Werte in Zwischenablage kopieren

mehrere Werte in Zwischenablage kopieren
26.11.2024 09:59:45
martinexcel1996
Servus zusammen,
ich möchte per Makro mehrere Werte in die Zwischenablage bekommen, damit ich sie dann nacheinander in anderen Programmen einfügen kann (per Zwischenablagen-Verlauf (Windows-Taste + V)
Einzeln funktioniert das ganze auch über 4 einzelne SUBs mit diesem Code:
 Sub Copy_1()

Dim objDataObject As DataObject
Set objDataObject = New DataObject

objDataObject.SetText Range("B53").Text
objDataObject.PutInClipboard
End Sub

Das ganze habe ich 4x (Copy_1 bis Copy_4) für die Zellen B53 bis B56
Wenn ich mir jetzt 4 einzelne Buttons erstelle, jedem eines der Makros Copy_1 bis Copy_4 zuweise, und nacheinander die 4 Buttons drücke, habe ich alle 4 Werte der Zelle nacheinander in meinem Zwischenablagen-Verlauf. So weit, so gut.

Eleganter wäre das ganze aber natürlich mit einem Button, statt 4 Buttons.
Der Versuch per neuem Makro die 4 Makros Copy_1 bis Copy_4 mit "Call" nacheinander aufzurufen, funktioniert aber nicht, hier habe ich am Ende nur den letzten Wert in der Zwischenablage.
Kann mir jemand weiterhelfen wo hier das Problem/der Unterschied liegt zwischen 4x einzeln die Makros auszuführen oder 1x per Call alle 4 Makros nacheinander aufzurufen?

Vielen Dank und beste Grüße
Martin
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: mehrere Werte in Zwischenablage kopieren
26.11.2024 10:46:06
martinexcel1996
Servus,
danke für die Antwort, leider wird in diesem Beitrag das Problem auch nicht direkt behoben. Dort wird ein einzelner Eintrag in der Zwischenablage erstellt, zusammengesetzt aus den einzelnen Werten die kopiert werden sollten.
Ich hätte jedoch gern jeden Wert einzeln im Zwischenablagen-Verlauf.

Mittlerweile hab ich das auch soweit hinbekommen mit:
Sub Copy_BD()

Call Copy_1
ActiveWorkbook.Save
Call Copy_2
ActiveWorkbook.Save
Call Copy_3
ActiveWorkbook.Save
Call Copy_4
End Sub

Diese Variante funktioniert, ich hab danach die 4 einzelnen Werte im Zwischenablagen-Verlauf.
Allerdings liegt das Excel-File auf einem Laufwerk, wodurch das Speichern hier leider sehr lange dauert, sodass die Ausführung des gesamten Makros mit 3x speichern insgesamt 1-2 Minuten dauert. ...und das nur für das Einlesen von 4 Werten in die Zwischenablage. Irgendwie auch unbefriedigend..
Gibt es hier irgendeine Alternative zum Speichern des gesamten Dokuments, die schneller geht, aber den gleichen Zweck erfüllen würde, also die einzelnen Calls voneinander "entkoppelt"?

VG Martin
Anzeige
Anzeige
Anzeige