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

Forumthread: VBA Wert in Zwischenablage kopieren

VBA Wert in Zwischenablage kopieren
08.02.2009 21:16:13
Lunatic82
Hallo zusamman,
hab eine frage.
Ist es möglich mitttels VBA den wert einer zelle in die zwischenablage zu kopieren?
in der Zelle steht eine Formel, ich möchte aber nur deren wert kopieren... d.h. das Formelergebnis
Soll über eine Schaltfläche gehen. Die formal steht in Zelle C15
mit folgendem hab ich's versucht, aber da kopiert er alles was in der zelle steht (samt formatierung)

Private Sub CommandButton1_Click()
Range("C15").Copy
End Sub


Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Wert in Zwischenablage kopieren
08.02.2009 21:22:00
Ramses
Hallo
Das geht nicht,du kopierst immer die komplette Zelle.
Aber du kannst das einfügen beeinflussen:
Bearbeiten - Inhalte einfügen - Das was du willst
Gruss Rainer
AW: VBA Wert in Zwischenablage kopieren
08.02.2009 21:22:21
Beverly
Hi,
geht es darum, dass du den Wert an anderer Stelle wieder einfügen willst? Zeichne mit dem Makrorekorder auf: "Bearbeiten" -&gt "Inhalte einfügen" -&gt "Werte"


Anzeige
AW: so
08.02.2009 23:32:32
chris
Hallo habe etwas dazu.
So gehts.
Wenn du einen fehler bekommst bei " Dim objClip As dataobject" musst du unter Verweiße den Verweiß "Microsoft Forms 2.0 Object Library" aktivieren.

Sub kopieren()
Dim objClip As dataobject
Set objClip = New dataobject
strTmp = Cells(1, 1).Value
objClip.SetText strTmp
objClip.PutInClipboard
End Sub


Anzeige

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

VBA Wert in Zwischenablage kopieren


Schritt-für-Schritt-Anleitung

Um mit VBA den Wert einer Zelle in die Zwischenablage zu kopieren, kannst du den folgenden VBA-Code verwenden. Dieser Code kopiert nur den Wert und nicht die Formatierung der Zelle. Füge den Code in das VBA-Editor-Fenster ein, das du mit ALT + F11 öffnest.

Sub kopieren()
    Dim objClip As DataObject
    Set objClip = New DataObject
    Dim strTmp As String
    strTmp = Range("C15").Value ' Hier wird der Wert der Zelle C15 ausgelesen
    objClip.SetText strTmp
    objClip.PutInClipboard ' Wert in die Zwischenablage kopieren
End Sub

Um diesen Code auszuführen, kannst du eine Schaltfläche in deinem Excel-Arbeitsblatt erstellen und den Makroaufruf damit verknüpfen.


Häufige Fehler und Lösungen

  1. Fehler bei "Dim objClip As DataObject"
    Stelle sicher, dass du die "Microsoft Forms 2.0 Object Library" aktivierst. Dies kannst du im VBA-Editor unter "Extras" > "Verweise" machen.

  2. Die Zwischenablage enthält nicht den erwarteten Wert
    Überprüfe, ob der Code die richtige Zelle referenziert. In diesem Beispiel wird der Wert aus Zelle C15 kopiert.


Alternative Methoden

Falls du eine alternative Methode suchst, um Werte in die Zwischenablage zu kopieren, kannst du auch die Copy-Methode verwenden, jedoch wird hierbei die Formatierung der Zelle mitkopiert. Eine Möglichkeit, nur den Wert zu kopieren, ist das Einfügen von Werten über das Kontextmenü:

  1. Rechtsklicke auf die Zielzelle.
  2. Wähle „Inhalte einfügen“.
  3. Wähle „Werte“ aus.

Praktische Beispiele

Hier ist ein weiteres Beispiel, um einen spezifischen Wert aus einer anderen Zelle in die Zwischenablage zu kopieren:

Sub kopierenVonZelle()
    Dim objClip As DataObject
    Set objClip = New DataObject
    Dim strTmp As String
    strTmp = Cells(1, 1).Value ' Kopiert den Wert aus A1
    objClip.SetText strTmp
    objClip.PutInClipboard
End Sub

Dieses Beispiel kopiert den Wert von Zelle A1 in die Zwischenablage.


Tipps für Profis

  • Nutze die Excel VBA Zwischenablage-Funktionen, um schnell Werte zwischen verschiedenen Arbeitsblättern oder -dateien zu übertragen.
  • Experimentiere mit dem Makrorekorder, um dir die genauen Schritte zum Einfügen von Werten zu merken und diese dann in deinen eigenen VBA-Code zu integrieren.
  • Halte den Code modular, damit er leicht angepasst werden kann, falls du andere Werte oder Zellreferenzen kopieren möchtest.

FAQ: Häufige Fragen

1. Wie kann ich sicherstellen, dass nur der Wert und nicht die Formatierung kopiert wird?
Verwende die SetText-Methode der DataObject-Klasse, um nur den Text in die Zwischenablage zu kopieren.

2. Was muss ich tun, wenn ich den kopierten Wert in eine andere Anwendung einfügen möchte?
Du kannst den kopierten Wert einfach in die gewünschte Anwendung einfügen, indem du STRG + V drückst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige