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

Formel überschreiben ohne sie zu löschen

Formel überschreiben ohne sie zu löschen
29.09.2003 08:45:06
Christian (swiss)
Moin an das geniale Forum,

Ich habe mal eine Frage: Ist es möglich ein Feld in Excel zu kreiren in dem eine Formel steht (also auch eine wert aus gibt), wo man aber trotzdem, den Wert überschrieben kann, ohne dass man die Formel löshct. Und wenn man dann wieder das überschriebene löscht, sollte wieder der Wert der Formel da stehen. Ist das in Excel ( möglischst ohne VBA ) möglich?
Vielen Dank

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

Betreff
Datum
Anwender
Anzeige
AW: Formel überschreiben ohne sie zu löschen
29.09.2003 08:57:34
Matthias G
Hallo Christian,
so einfach geht das nicht.
Du kannst allerdings folgendes machen:
z.B. steht in A1 die Formel, z.B. "=F1-G1". Wenn Du diese mit einem Wert überschreibst, ist sie weg. Arbeite also mit einer Hilfszelle:
Ändere die Formel in A1 in "=WENN(B1="";F1-G1;B1)", dann zeigt die Zelle A1 den ursprünglichen Formelwert an, solange B1 leer ist. Wenn B1 nicht leer ist, hat A1 den gleichen Wert wie B1. Du kannst die Formel also durch Eintrag in B1 quasi "überschreiben".

Grüße,
Matthias
AW: Formel überschreiben ohne sie zu löschen
29.09.2003 09:05:56
Christian (swiss)
Hi Matthias,

ah... auch ne gute Idee. DANKE!!! Dachte mir schon, dass es nicht so ganz ohne geht ;-)!

Aber trotzdem Danke!

Christian
Anzeige
AW: Formel überschreiben ohne sie zu löschen
29.09.2003 09:19:42
Matthias G
Hallo Christian,
Danke für die Rückmeldung.
Ich hab mir überlegt, dass es auch durch direktes Löschen der Zelle ginge, indem nämlich die Formel im Kommentarfeld der Zelle hinterlegt würde.
Das ginge aber nur mit VBA und Worksheet_Change-Ergeignis.
Wäre etwas knifflig, deshalb vorab die Frage, hast du Interesse?

Gruß,
Matthias
AW: Formel überschreiben ohne sie zu löschen - VBA
29.09.2003 10:00:32
Matthias G
Hallo Christian,
also ich hab mich mal drangemacht und folgenden Code geschrieben:

Erstmal ein Modul, welches im Aktuellen Tabellenblatt alle gefundenen Formeln in die Kommentare schreibt (in ein normales Modul). Es muss bei schon vorhandenen Zellen nur einmal ausgeführt werden:
Sub MerkeFormeln()
Dim Benutzt, z As Range
Set Benutzt = Range(Cells(1, 1), Cells.SpecialCells(xlCellTypeLastCell))
For Each z In Benutzt
If z.HasFormula Then
z.NoteText Text:=z.Formula
Else
z.NoteText Text:=""
End If
Next z
End Sub

Dann die Ereignisprozedur, die in das Codemodul des entsprechenden Tabellenblatts gehört:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim z As Range
Application.EnableEvents = False
For Each z In Target
If z.Value = "" Then
z.Value = z.NoteText
'z.Calculate
End If
If z.HasFormula Then
z.NoteText Text:=z.Formula
z.Font.ColorIndex = 3
Else
z.Font.ColorIndex = xlColorIndexAutomatic
End If
Next z
Application.EnableEvents = True
End Sub

Die Zellfarbe wird bei hinterlegten Zellen so geändert: Überschriebene Formel=schwarz, Original-Formel=rot.
Viel Spaß damit,
Matthias
Anzeige
AW: Formel überschreiben ohne sie zu löschen - VBA
29.09.2003 10:41:52
Christian (swiss)
Wou Matthias,

das ist ja die delux Lösung :-)Hey 1000 Dank. Werde mich gleich mal ans implementieren machen. Klasse Zug von Dir!!!(Mit VBA gehts dann doch eleganter)

Noch mal Danke,

Gruss

Christian
AW: Danke fürs Feedback! -o.T.
29.09.2003 10:48:19
Matthias G
-

29 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige