Kurzfassung — Werte einfügen ersetzt eine aktive Formel durch die Zahl, die sie gerade anzeigt. Diese Zahl steht danach für sich allein: Sie können die Zellen löschen, auf die sie verwiesen hat, die Arbeitsmappe berechnet sie nicht mehr neu, und externe Verknüpfungen verstummen. Das Zwischenablage-Rezept lautet
.Copy, dannPasteSpecial Paste:=xlPasteValues— aber das nacktexlPasteValueslässt das Zahlenformat weg, sodass Datumswerte als Seriennummern wie45000zurückkommen. Nutzen SiexlPasteValuesAndNumberFormats, wenn die Anzeige zählt, und für ein einfaches Einfrieren ganz ohne Zwischenablagedst.Value = src.Value.
' Einen Formelbereich in seine Ergebnisse einfrieren, die Anzeige bleibt erhalten:
src.Copy
src.PasteSpecial Paste:=xlPasteValuesAndNumberFormats
Application.CutCopyMode = False
' Die Variante ohne Zwischenablage, nur Werte (verliert die Zahlenformate):
dst.Value = src.Value
Eine Formel ist ein Versprechen, neu zu rechnen: =Sheet2!A1*1.1 ist keine Zahl, sondern eine
Anweisung, die jedes Mal neu ausgeführt wird, wenn sich Sheet2!A1 ändert. Meistens ist genau das
gewollt. Aber manchmal soll die Antwort aufhören, ein Versprechen zu sein, und zur Tatsache werden — ein
Monat, den Sie archivieren, ein Schnappschuss, den Sie verschicken, eine volatile Formel, die Sie stoppen
wollen. Genau das macht Werte einfügen. Es ist die meistgesuchte Ecke von
PasteSpecial, und es hat eine Falle, die Sie kennen sollten, bevor Sie es
einsetzen.
Was Sie lernen
- Das Denkmodell — Werte einfügen macht aus einem Versprechen, neu zu rechnen eine einfache Zahl
- Die eine Regel, die Daten rettet — einfrieren bevor Sie die Quelle löschen, nicht danach
- Die Formatfalle —
xlPasteValuesentfernt das Zahlenformat, und Datumswerte werden zu Seriennummern - Die drei echten Aufgaben — ein Ergebnis archivieren, Volatiles stoppen, externe Verknüpfungen kappen
- Die Abkürzung ohne Zwischenablage —
dst.Value = src.Value - Wann Sie nicht einfrieren sollten, weil eine Formel gerade ihre Aufgabe erfüllt
Das Denkmodell: ein Schnappschuss, keine Verknüpfung
Eine Formel verknüpft eine Zelle mit ihren Eingaben. Werte einfügen kappt diese Verknüpfung und
hinterlässt die Zahl, die im Moment der Ausführung angezeigt wurde — einen Schnappschuss. Die Pixel sehen
identisch aus; das Verhalten ist völlig anders. Vorher war die Zelle =A1+A2 und würde A1 und A2 für
immer folgen. Danach ist die Zelle die literale 350, und A1 und A2 können sich ändern, verschoben werden
oder verschwinden, ohne dass es die Zelle bemerkt.
Genau dieser eine Unterschied — Verknüpfung gegen Schnappschuss — ist die ganze Entscheidung. Wenn Sie fragen „muss diese Zahl ihre Eingaben noch verfolgen?", verrät die Antwort, ob Sie die Formel belassen oder einfrieren sollten. Werte einfügen ist Ihre Antwort: „Nein, dieses Ergebnis ist jetzt endgültig."
Die wichtigste Regel: einfrieren, bevor Sie die Quelle löschen
Hier ist der Fehler, der Daten zerstört. Sie bauen einen Bericht mit Formeln, die auf ein Rohdatenblatt
verweisen, und löschen dann das Rohdatenblatt, um die Datei schlanker zu machen — und jede Formel bricht
zu #REF! zusammen, weil die Zellen, auf die sie zeigten, verschwunden sind:
dst.Formula = "=RawData!A1 * 1.1" ' eine lebendige Verknuepfung zu einem anderen Blatt
Worksheets("RawData").Delete ' die Quelle verschwindet...
' dst zeigt jetzt #REF! - die Zahl ist verloren
Die Lösung ist die Reihenfolge: Zuerst die Ergebnisse in Werte einfrieren, dann die Quelle löschen.
Sobald dst.PasteSpecial Paste:=xlPasteValues gelaufen ist, enthält die Zelle eine echte Zahl, die
RawData nichts mehr schuldet, also ist das Löschen des Blatts sicher. Die Regel gilt allgemein: Immer
wenn Sie im Begriff sind, Zellen zu entfernen, zu überschreiben oder zu verschieben, von denen eine Formel
abhängt, fügen Sie zuerst die Werte ein. Ein #REF! lässt sich nicht mehr rückgängig machen, sobald die
Datei gespeichert und geschlossen wurde.
Die Formatfalle: nur Werte entfernt das Zahlenformat
Das ist die Überraschung, die Leute zurück zur Suche schickt. xlPasteValues kopiert den Wert — und ein
Wert in Excel ist eine nackte Zahl. Ein Datum wird als Seriennummer gespeichert (Tage seit 1900), eine
Währung als reine Zahl, ein Prozentwert als Dezimalzahl. Das Zahlenformat der Formel war das, was sie
als 2026-03-15, $1,200 und 35% angezeigt hat. Fügen Sie nur Werte ein, und diese Formatierung bleibt
zurück:
src.Copy
src.PasteSpecial Paste:=xlPasteValues ' 2026-03-15 wird zu 46091
src.PasteSpecial Paste:=xlPasteValuesAndNumberFormats ' 2026-03-15 bleibt 2026-03-15
Der ehrliche Standard für alles, was ein Mensch liest, ist also xlPasteValuesAndNumberFormats — es
trägt das Anzeigeformat zusammen mit der Zahl mit. Greifen Sie nur dann zum nackten xlPasteValues, wenn
Sie gezielt die rohen zugrunde liegenden Zahlen wollen — für eine Berechnung oder den Export in ein
System, das ohnehin neu formatiert.
Drei Aufgaben, die Werte einfügen wirklich erledigt
Formeln einzufrieren ist keine einzelne Aufgabe, sondern drei, und sie zu benennen zeigt Ihnen, wann Sie es tun sollten:
- Ein Ergebnis archivieren. Eine Monatszusammenfassung, berechnet aus den Daten dieses Monats, sollte sich nicht ändern, wenn die Daten des nächsten Monats eintreffen. Frieren Sie sie ein, und die Zahl gehört dauerhaft diesem Monat.
- Volatile Formeln stoppen.
NOW(),RAND(),TODAY()undOFFSET()berechnen bei jeder Bearbeitung neu — Lärm, sobald Sie den gewünschten Wert haben. Werte einfügen fixiert sie. - Externe Verknüpfungen kappen. Eine Arbeitsmappe voller
=[Budget.xlsx]Sheet1!A1nervt jeden Empfänger mit einer Aktualisierungsabfrage. Frieren Sie diese Zellen ein, und die Datei trägt ihre Zahlen ohne Verknüpfungen, denen sie hinterherjagen müsste.
Alle drei sind dieselbe Operation mit unterschiedlicher Absicht, und alle drei sind unsicher, wenn Sie die Quelle zuerst löschen — erst einfrieren, dann entfernen.
Die Abkürzung ohne Zwischenablage: dst.Value = src.Value
Wenn Sie nur Werte wollen — keine Formate, keine Operation, keine Transposition —, brauchen Sie die
Zwischenablage überhaupt nicht. Das .Value eines Bereichs einem anderen zuzuweisen schreibt die Zahlen
direkt hinüber:
dst.Value = src.Value ' nur Werte, sofort, beruehrt die Zwischenablage nie
Das ist der schnellste Weg, an Ort und Stelle einzufrieren — rng.Value = rng.Value überschreibt die
Formeln eines Bereichs mit ihren eigenen Ergebnissen in einer Zeile — und es umgeht jeden
Zwischenablage-Fehlermodus aus PasteSpecial. Die einzige Einschränkung: Es
bewegt nur Werte, keine Zahlenformate — nutzen Sie also
PasteSpecial Paste:=xlPasteValuesAndNumberFormats, wenn die Anzeige erhalten bleiben muss, und sehen Sie
sich Copy Destination für das vollständige Bild des Kopierens ohne
Zwischenablage an.
Wann Sie nicht einfrieren sollten
Einfrieren ist destruktiv — Sie werfen eine Formel weg. Tun Sie das nicht bei einer Zelle, deren Zahl weiterhin ihre Eingaben verfolgen soll: eine laufende Summe, eine verknüpfte Zusammenfassung, ein Modell, dessen ganzer Sinn darin besteht, bei geänderten Annahmen neu zu rechnen. Frieren Sie diese ein, ändert der nächste Leser eine Eingabe, und die „Summe" bewegt sich still nicht mehr mit — schlimmer als jede Verzögerung durch Neuberechnung. Frieren Sie ein Ergebnis, das endgültig ist; lassen Sie eine Formel, die noch arbeitet. Im Zweifel frieren Sie eine Kopie auf einem Schnappschussblatt ein und lassen die aktiven Formeln, wo sie sind.
Wie ExcelMaster hilft
Werte einfügen ist eine Ein-Zeilen-Idee mit zwei Wegen, Daten zu verlieren: Frieren Sie nach dem Löschen
der Quelle ein, bekommen Sie #REF!; nutzen Sie das nackte xlPasteValues auf Datumswerten, verschicken
Sie eine Spalte voller 45000en. Beides kompiliert, beides läuft, und beides sieht gut aus, bis es zu
spät ist, es zu beheben.
ExcelMaster lässt Sie sagen, was
Sie meinen — „friere die Zahlen dieses Monats ein", „wandle diese Formeln in Werte um, aber behalte die
Datumswerte", „kappe die Verknüpfungen, bevor ich es verschicke" — und ordnet die Schritte sicher (zuerst
einfrieren, dann löschen), wählt xlPasteValuesAndNumberFormats, wenn ein Mensch das Ergebnis liest, und
nutzt dst.Value = src.Value, wenn die Zwischenablage nicht gebraucht wird. Sie behalten die Arbeitsmappe
und den Code.
Häufig gestellte Fragen
Wie wandle ich Formeln in VBA in Werte um?
Frieren Sie sie an Ort und Stelle ein: rng.Value = rng.Value überschreibt jede Formel mit der Zahl, die
sie gerade liefert, in einer Zeile und ohne Zwischenablage. Müssen Sie das Anzeigeformat bei Datumswerten
oder Währungen behalten, nutzen Sie stattdessen die Zwischenablage-Variante — rng.Copy, dann
rng.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, gefolgt von Application.CutCopyMode = False.
Warum wurden meine Datumswerte nach dem Einfügen von Werten zu Zahlen?
Weil xlPasteValues den Wert ohne das Zahlenformat einfügt, und der zugrunde liegende Wert eines Datums
eine Seriennummer wie 45000 ist. Das Format war das, was ihn als Datum angezeigt hat. Nutzen Sie
xlPasteValuesAndNumberFormats, damit das Anzeigeformat mit übertragen wird und die Datumswerte
Datumswerte bleiben.
Wie stoppe ich eine Formel bei der Neuberechnung, ohne sie zu löschen?
Ersetzen Sie sie durch ihr Ergebnis — Werte einfügen. Kopieren Sie die Zellen und nutzen Sie
PasteSpecial Paste:=xlPasteValuesAndNumberFormats, oder verwenden Sie rng.Value = rng.Value. Das ist
die übliche Lösung für volatile Formeln wie NOW(), RAND() und OFFSET(), die sich bei jeder
Bearbeitung ändern: Einmal eingefroren, steht die Zahl fest.
Zerstört das Einfügen von Werten meine Formeln, wenn ich das Quellblatt lösche?
Es verhindert genau das — solange Sie zuerst einfrieren. Wenn eine Formel auf ein anderes Blatt verweist
und Sie dieses Blatt löschen, wird die Formel zu #REF!, und die Zahl ist verloren. Fügen Sie die Werte
vor dem Löschen ein, damit die Zelle eine echte Zahl enthält, die nicht mehr von der Quelle abhängt.
Was ist der Unterschied zwischen .Value und .Value2 beim Einfrieren?
.Value gibt Datumswerte und Währungen als ihre formatierten Typen zurück, während .Value2 die rohe
zugrunde liegende Zahl liefert (ein Datum als seine Seriennummer). Für ein einfaches Einfrieren reicht
rng.Value = rng.Value; nutzen Sie .Value2 nur, wenn Sie gezielt die rohen Seriennummern wollen, ohne
Währungs- oder Datumstypisierung — den Unterschied erklärt VBA Value2.
Getestet in
Getestet in: Excel 365 (Windows 11), VBA 7.1 — zuletzt geprüft am 09.09.2026.
Weiterführende Anleitungen: VBA PasteSpecial · VBA Copy Destination · VBA Kopieren und Einfügen · VBA Formula · VBA Value2
