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

Forumthread: Variable in die Zwischenablage

Variable in die Zwischenablage
Thomas
Hallo,
ich versuche eine Variable zu kopieren. Aber VBA will das nicht, warum?
Bsp:
Sub test()
Dim i
i = ActiveWorkbook.FullName
i.Value.Copy
End Sub

Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Variable in die Zwischenablage
02.11.2009 16:49:38
Chris
Servus Thomas,
so:
Sub Zwischenablage()
Dim TB As New DataObject, i As String
i = ActiveWorkbook.FullName
Set TB = New DataObject
TB.SetText i
TB.PutInClipboard
Set TB = Nothing
End Sub

Gruß
Chris
Dateiname in Zwischenablage kopieren
02.11.2009 16:52:13
NoNet
Hallo Thomas,
möchtest Du das ?
Sub KopiereDateinameInZwischenablage()
'Erfordert VBA-Verweis auf "Microsoft Forms 2.0 Object Library" !
Dim objData As DataObject
Set objData = New DataObject
objData.SetText ActiveWorkbook.FullName
objData.PutInClipboard
End Sub
Gruß, NoNet
Anzeige
AW: bekomme Fehlermeldung
02.11.2009 16:58:22
Thomas
Hallo Chris und NoNet,
ich bekomme bei Eueren Lösungen folgende Fehlermeldung:
Fehler beim Kompilieren
Gruß
Thomas
Dann setzte bitte den beschriebenen Verweis !
02.11.2009 17:09:20
NoNet
Hallo Thomas,
nicht umsonst habe ihc meinem code den Hinweis auf den Verweis zur "MS Forms 2.0 Object Library" hinzugefügt !
Setze diesen Verweis bitte, dann wird der Code vermutlich auch funktionieren :
Userbild
Gruß, NoNet
Anzeige
AW: Dann setzte bitte den beschriebenen Verweis !
02.11.2009 17:13:27
Thomas
Sorry, hab ich übersehen.
Danke jetzt funktioniert es.
Gruß
Thomas
Dieser Verweis...
02.11.2009 17:40:54
{Boris}
Hi Thomas,
...wird übrigens automatisch gesetzt, sobald Du ein (leeres) Userform in Dein VBA-Projekt einbindest.
Dann brauchst Du gar nicht erst zu suchen.
Grüße Boris
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Variable in die Zwischenablage kopieren


Schritt-für-Schritt-Anleitung

Um eine Variable in die Zwischenablage zu kopieren, benötigst Du die DataObject-Klasse aus der "Microsoft Forms 2.0 Object Library". Folge diesen Schritten:

  1. Verweis setzen: Gehe in den VBA-Editor, klicke auf Extras > Verweise und aktiviere "Microsoft Forms 2.0 Object Library".

  2. VBA-Code einfügen: Verwende den folgenden Code, um eine Variable in die Zwischenablage zu kopieren:

    Sub Zwischenablage()
       Dim TB As New DataObject
       Dim i As String
       i = ActiveWorkbook.FullName
       TB.SetText i
       TB.PutInClipboard
       Set TB = Nothing
    End Sub
  3. Ausführen: Starte das Makro, um den Dateinamen in die Zwischenablage zu kopieren.


Häufige Fehler und Lösungen

  • Fehlermeldung beim Kompilieren: Wenn Du eine Fehlermeldung erhältst, stelle sicher, dass der Verweis auf die "Microsoft Forms 2.0 Object Library" gesetzt ist. Das kann leicht übersehen werden.

  • Variable wird nicht kopiert: Vergewissere Dich, dass der Code korrekt eingegeben ist und die DataObject-Klasse verwendet wird.


Alternative Methoden

Wenn Du keine Verweise setzen möchtest, kannst Du auch einen Range-Objekt verwenden:

Sub RangeInZwischenablage()
    Dim i As String
    i = ActiveWorkbook.FullName
    ' Temporär eine Zelle verwenden
    Range("A1").Value = i
    Range("A1").Copy
    ' Optional: Lösche den Inhalt wieder
    Range("A1").ClearContents
End Sub

Diese Methode verwendet die Zwischenablage von Excel, um den Wert zu kopieren.


Praktische Beispiele

Hier sind einige Beispiele, wie Du verschiedene Typen von Variablen in die Zwischenablage kopieren kannst:

  1. Text:

    Sub TextInZwischenablage()
       Dim TB As New DataObject
       Dim text As String
       text = "Das ist ein Beispieltext."
       TB.SetText text
       TB.PutInClipboard
    End Sub
  2. Werte:

    Sub WertInZwischenablage()
       Dim TB As New DataObject
       Dim wert As Double
       wert = 123.45
       TB.SetText CStr(wert)
       TB.PutInClipboard
    End Sub

Diese Beispiele zeigen, wie einfach es ist, vba text in zwischenablage kopieren oder vba wert in zwischenablage kopieren.


Tipps für Profis

  • Wenn Du oft mit der Zwischenablage arbeitest, erstelle Dir eine eigene Modulbibliothek mit häufig verwendeten Funktionen.
  • Nutze die Debug.Print-Funktion, um sicherzustellen, dass die Variablen den richtigen Wert haben, bevor Du sie in die Zwischenablage kopierst.
  • Achte darauf, dass Du die Zwischenablage nicht übermäßig beschreibst, um die Performance zu optimieren.

FAQ: Häufige Fragen

1. Warum funktioniert mein Code nicht?
Stelle sicher, dass der Verweis auf die "Microsoft Forms 2.0 Object Library" korrekt gesetzt ist.

2. Wie kann ich mehrere Variablen in die Zwischenablage kopieren?
Kombiniere die Werte zu einem String, bevor Du sie in die Zwischenablage kopierst, z.B. TB.SetText "Wert1: " & wert1 & " Wert2: " & wert2.

3. Ist es möglich, einen Bereich anstelle einer einzelnen Variablen zu kopieren?
Ja, Du kannst einen Bereich kopieren, indem Du die Copy-Methode von einem Range-Objekt verwendest.

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