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

Forumthread: Formel nach berechnung löschen

Formel nach berechnung löschen
23.02.2009 23:12:45
Andre
Hallo!!
Wie kann ich es mit einem VBA code erreichen, daß sobald die Formel in der Zelle D7 errechnet wurde, das Ergebnis stehen bleibt, aber die Formel gelöscht oder außer Betrieb gesetzt wird?
Dann geht es mit D8, D9, D10 weiter.
Danke im Vorraus.
Anzeige

18
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formel nach berechnung löschen
23.02.2009 23:16:41
Uduuh
Hallo,
wozu VBA?
Kopieren-Bearbeiten-Inhalte einfügen-Werte
Gruß aus’m Pott
Udo

AW: Formel nach berechnung löschen
23.02.2009 23:18:06
Andre
Hallo!!
Es sollte schon automatisch laufen!!
wie lautet die Formel? o.T.
24.02.2009 00:28:07
Josef
Gruß Sepp

Anzeige
AW: Formel nach berechnung löschen
24.02.2009 00:35:12
Daniel
Hi
dieser Code muss ins Modul des Tabellenblatts, für das er gelten soll

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
If Target.Column  4 Then Exit Sub
If Target.Row 


der Funktionelle Teile ist "Target.Formula = Target.Value", der Rest ist die Prüfung auf den richtigen Zellbereich
Gruß, Daniel

Anzeige
AW: Formel durch Wert ersetzen
24.02.2009 00:49:00
Erich
Hi Andre,
du schreibst "sobald die Formel in der Zelle D7 errechnet wurde".
Das ist doch der Moment, in dem die Formel in die Zelle geschrieben wird, oder?
Dann greift Daniels Lösung.
Oder geht es etwa darum:
Das Formelergebnis hängt von einem oder mehreren Werten in anderen Zellen ab.
In D7 soll das Ergebnis nach Änderung dieser anderen Zelle(n) festgehalten werden.
Dann müsste man im Worksheet_Change diese andere(n) Zelle(n) überwachen.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
noch eine Version
24.02.2009 07:55:34
Tino
Hallo,
hier noch eine Version, Kommentare stehen im Code.
Kommt als Code ins entsprechende Tabellenblatt.
Private Sub Worksheet_Calculate()
Dim rngBereich As Range, iCalc As Integer

'Bereich wo sich die Formeln befinden, hier Spalte 1 
Set rngBereich = Columns(1)
On Error GoTo KeineFormeln:
 'sind keine Formeln vorhanden, kommt es zum Fehler 
 Set rngBereich = rngBereich.SpecialCells(xlCellTypeFormulas)
On Error GoTo 0

With Application
  iCalc = .Calculation
 .ScreenUpdating = False
 .EnableEvents = False
 .Calculation = xlCalculationManual
    
'    Formel wird durch festen Wert ersetzt, 
'    wenn diese als Ergebnis nicht leer liefert. 
'    Dies kann auch umgestellt oder erweitert werden 
    For Each rngBereich In rngBereich
     If rngBereich <> "" Then rngBereich.Value = rngBereich.Value
    Next rngBereich
 
 .Calculation = iCalc
 .ScreenUpdating = True
 .EnableEvents = True
End With

KeineFormeln:
End Sub


Gruß Tino

Anzeige
AW: noch eine Version
24.02.2009 22:23:54
Andre
Hallo Tino!!
Wo und wie muß ich den die Spalte D eingeben?
Habe da leider nicht so die Ahnung.
Der File-Upload funktioniert leider nicht bei mir.
Gruß Andre
AW: noch eine Version
24.02.2009 22:40:46
Tino
Hallo,
mach aus
Columns(1)
dies
Columns(4)
1= Spalte A
2= Spalte B
3= Spalte C
4= Spalte D
usw...
Gruß Tino
Anzeige
AW: noch eine Version
25.02.2009 16:31:14
Andre
Hey Tino!!
Habe alles so gemacht wie du gesagt hast. Leider funzt es nicht bei mir.
Die alten Zellen werden immer noch neu berechnet sobalt sich die Bezugszelle ändert.
Hast du noch ne Möglichkeit?
Gruß Andre
so kommen wir nicht weider
25.02.2009 17:39:02
Tino
Hallo,
Lade mal eine Beispieldatei hoch, am besten mit Beispiel vorher nachher.
Dazu klicke auf "Hier geht es zum File-Upload"
Wähle eine Datei zum Upload aus
(beachte die Hinweise und verwende nicht ä, ö, ü, ß im Namen der Datei)
Klicke auf "Datei zum Server"
Du erhältst einen Link, diesen kopierst Du ohne veränderungen in Deine Nachricht.
Gruß Tino
Anzeige
AW: so kommen wir nicht weider
25.02.2009 18:33:02
Tino
Hallo,
ok. Du hattest nicht erwähnt, dass Deine Tabellen Passwortgeschützt sind.
Teste mal diese Version.
https://www.herber.de/bbs/user/59784.xls
Gruß Tino
Anzeige
AW: so kommen wir nicht weider
25.02.2009 18:45:05
Andre
Hey Tino!!
Es funzt!!
Außer das die Werte Auf bzw Abgerundet werden. Liegt das an irgend einer Formatierung?
Hast du da noch ne Idee?
Gruß Andre
AW: so kommen wir nicht weider
25.02.2009 19:02:05
Tino
Hallo,
es wird der Wert eingetragen der durch die Formel angezeigt wird.
Eventuell überprüfe mal die Zellformatierung,
diese steht zurzeit bei Dir auf Währung mit 4 Nachkommastellen.
Gruß Tino
Anzeige
AW: so kommen wir nicht weider
25.02.2009 19:05:38
Andre
Ja, das ist auch gewollt. Kann man nicht den Wert aus der Bezugszelle 1 zu 1 übernehmen?
AW: so kommen wir nicht weider
26.02.2009 13:42:41
Tino
Hallo,
habe es nochmal getestet, es wird der Wert der Zelle übernommen (nicht wie angezeigt).
Deine Anzeige ist auf 4 Nachkommastellen eingestellt.
Versuche es mal so.
Anstatt dieser Zeile
If rngBereich "" Then rngBereich.Value = rngBereich.Value
Diese verwenden
If rngBereich "" Then rngBereich.Value = Application.Round(rngBereich.Value, 4)
Gruß Tino
Anzeige
AW: so kommen wir nicht weider
27.02.2009 13:25:48
Andre
Ja, Danke
jetzt läuft es!!
Besten Dank
AW: Formel nach berechnung löschen
24.02.2009 22:16:13
Andre
Hallo!!
Konnte mich leider erst jetzt wieder melden, Sorry!!
Mit euren Codes läuft es leider nicht.
Ich habe in einer Zelle folgende Formel:
=WENN(B6"";Preisentwicklung!D5;"")
Die Bezugszelle ;Preisentwicklung!D5; ändert sich gelegendlich, aber die alten Werte sollen erhalten bleiben. Sobalt sich also der Wert in der Bezugszelle ändert, ändern sich auch die Werte in den vorherigen
Zellen.
Leider funktioniert der File-Upload nicht.
Danke im Vorraus
Gruß Andre
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige

Infobox / Tutorial

Formeln in Excel entfernen und Ergebnisse festhalten


Schritt-für-Schritt-Anleitung

Um in Excel alle Formeln zu entfernen und die berechneten Werte zu behalten, kannst du folgende Schritte ausführen:

  1. Zellen auswählen: Markiere die Zellen, in denen Du die Formeln löschen möchtest.
  2. Inhalte einfügen: Drücke Strg + C, um die Zellen zu kopieren.
  3. Werte einfügen: Klicke mit der rechten Maustaste auf die markierten Zellen und wähle „Inhalte einfügen“ > „Werte“ aus. Dies entfernt die Formeln und lässt die Ergebnisse stehen.

Wenn du VBA verwenden möchtest, um diesen Vorgang zu automatisieren, kannst du den folgenden Code verwenden:

Private Sub Worksheet_Calculate()
    Dim rngBereich As Range
    On Error GoTo KeineFormeln:
    Set rngBereich = ActiveSheet.UsedRange.SpecialCells(xlCellTypeFormulas)

    For Each cell In rngBereich
        If cell.Value <> "" Then cell.Value = cell.Value
    Next cell

KeineFormeln:
End Sub

Füge diesen Code in das Modul des entsprechenden Tabellenblatts ein.


Häufige Fehler und Lösungen

  • Problem: Die Formel bleibt stehen und berechnet sich weiterhin.

    • Lösung: Stelle sicher, dass du die Zellen korrekt kopierst und nur die Werte einfügst. Überprüfe auch, ob der VBA-Code korrekt implementiert ist.
  • Problem: Werte werden abgerundet oder nicht korrekt übernommen.

    • Lösung: Überprüfe die Zellformatierung. Stelle sicher, dass die Zellen auf das richtige Format eingestellt sind (z.B. Standard oder Zahl) und nicht auf Währung oder Prozentsatz.

Alternative Methoden

Eine einfache Möglichkeit, alle Formeln aus Excel zu entfernen und die berechneten Werte zu behalten, ist die Verwendung der „Suchen und Ersetzen“-Funktion:

  1. Drücke Strg + H, um das Suchen und Ersetzen-Fenster zu öffnen.
  2. Gib in das Feld „Suchen nach“ das Gleichheitszeichen = ein.
  3. Lass das Feld „Ersetzen durch“ leer.
  4. Klicke auf „Alle ersetzen“.

Dies entfernt alle Formeln, sorgt jedoch auch dafür, dass die Werte nicht stehen bleiben. Daher ist diese Methode nur sinnvoll, wenn du die Formeln endgültig löschen möchtest.


Praktische Beispiele

  • Beispiel 1: Du hast in Zelle D7 die Formel =B7*C7. Um die Formel zu löschen und das Ergebnis zu behalten, kopierst du die Zelle und fügst sie als Wert wieder ein. Jetzt bleibt der Wert in D7 stehen, ohne dass die Formel noch vorhanden ist.

  • Beispiel 2: Wenn du eine ganze Spalte mit Formeln in Excel hast und diese entfernen möchtest, kannst du die gesamte Spalte auswählen, den oben beschriebenen Vorgang durchführen und so alle Formeln auf einmal entfernen.


Tipps für Profis

  • Wenn du regelmäßig Formeln in Excel entfernen und die Werte behalten möchtest, erstelle einen VBA-Button, der den oben genannten Code ausführt. So hast du die Funktion immer griffbereit.
  • Nutze Strg + Z, um Änderungen rückgängig zu machen, falls du versehentlich die falschen Zellen bearbeitet hast.
  • Verwende die Funktion „Bedingte Formatierung“, um Zellen hervorzuheben, die Formeln enthalten, bevor du sie entfernst.

FAQ: Häufige Fragen

1. Wie kann ich alle Formeln aus Excel entfernen? Um alle Formeln aus Excel zu entfernen, kannst du die Zellen kopieren und dann als Werte einfügen. Alternativ kannst du auch den VBA-Code verwenden.

2. Was passiert mit den Werten, wenn ich die Formeln lösche? Wenn du die Formeln korrekt entfernst, bleiben die berechneten Werte in den Zellen erhalten. Achte darauf, die Zellen als Werte einzufügen, um die Formeln zu löschen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige