Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: per Makro Felder löschen,ohne Formeln zu löschen

per Makro Felder löschen,ohne Formeln zu löschen
08.02.2016 14:23:24
Karin
Guten Tag,
ich habe eine Tabelle, die ich immer erneut mithilfe einer Dateneingabemaske fülle.
In der Tabelle sind in manchen Spalten FOrmeln hinterlegt.
Ich habe mir nun einen Button erstellt, der bei Klick die Tabelle leert - und natürlich auch die Formeln löscht. Wie kann ich das verhindern?
Die Zelle soll "leer" ausschauen, und die Formel bleiben
Vielen Dank im Voraus!

Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW:
08.02.2016 14:42:31
Ck
Hi,
Wie kann ich das verhindern?

Öhmm,
wie wäre es wenn du die Zellen mit Formeln nicht löschen würdest!
lg
Ck

AW: AW:
08.02.2016 15:01:23
Karin
Nein, das geht natürlich nicht so einfach ;) Die Zellen müssen "leer" sein, da die Benutzer sonst durcheinander kommen.

Anzeige
AW: per Makro Felder löschen,ohne Formeln zu löschen
08.02.2016 14:57:03
KlausF
Hallo,
folgendes Makro löscht nur die Werte aber nicht die Formeln:
Sub DelAllConstants()
Dim wks As Worksheet
Dim rng As Range
Set wks = ActiveSheet
With wks
On Error Resume Next
Set rng = wks.Cells.SpecialCells(xlCellTypeConstants, 23)
On Error GoTo 0
If Not rng Is Nothing Then
rng.ClearContents
End If
End With
Set wks = Nothing
Set rng = Nothing
End Sub
Gruß
Klaus

Anzeige
per Makro Felder löschen,ohne Formeln zu löschen
08.02.2016 15:03:42
Karin
Vielen Dank :)
Wie kann ich das in einem bestimmten Bereich eingrenzen? Also zb B3:G8

AW: per Makro Felder löschen,ohne Formeln zu löschen
08.02.2016 15:12:45
KlausF
Hallo Karin,
ersetze die rng-Zeile durch:
Set rng = wks.Range("B3:G8").Cells.SpecialCells(xlCellTypeConstants, 23)
Gruß
Klaus
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Inhalte in Excel löschen, ohne Formeln zu verlieren


Schritt-für-Schritt-Anleitung

Um in Excel den Inhalt einer Tabelle zu löschen, ohne die Formeln zu verlieren, kannst du ein VBA-Makro verwenden. Hier sind die Schritte, um dies zu erreichen:

  1. Öffne deine Excel-Datei und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.

  3. Füge den folgenden Code in das Modul ein:

    Sub DelAllConstants()
       Dim wks As Worksheet
       Dim rng As Range
       Set wks = ActiveSheet
       With wks
           On Error Resume Next
           Set rng = .Cells.SpecialCells(xlCellTypeConstants, 23)
           On Error GoTo 0
           If Not rng Is Nothing Then
               rng.ClearContents
           End If
       End With
       Set wks = Nothing
       Set rng = Nothing
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. Führe das Makro aus (über Entwicklertools > Makros oder ALT + F8 und wähle das Makro aus).

Dieses Makro löscht alle Werte in der Tabelle, während die Formeln erhalten bleiben.


Häufige Fehler und Lösungen

  • Fehler: Das Makro löscht auch die Formeln.

    • Lösung: Stelle sicher, dass du das oben angegebene Makro genau so verwendest. Achte darauf, dass es mit der richtigen Excel-Version kompatibel ist.
  • Fehler: Das Makro funktioniert nur auf dem aktiven Blatt.

    • Lösung: Du kannst das Makro anpassen, um eine bestimmte Tabelle anzusprechen, indem du Set wks = ThisWorkbook.Worksheets("DeinTabellenName") verwendest.

Alternative Methoden

Wenn du kein VBA verwenden möchtest, gibt es auch manuelle Methoden:

  1. Verwendung von Filtern: Du kannst filterbare Spalten nutzen, um nur die Zellen mit Werten anzuzeigen und diese dann manuell zu löschen, ohne die Formeln zu beeinträchtigen.

  2. Suchen und Ersetzen: Du kannst die Funktion Suchen und Ersetzen verwenden, um gezielt Werte zu löschen, ohne die Formeln zu berühren.


Praktische Beispiele

Angenommen, du hast einen Bereich von B3 bis G8 und möchtest nur die Inhalte in diesem Bereich löschen, während die Formeln erhalten bleiben. Du kannst den Code wie folgt anpassen:

Sub DelSpecificConstants()
    Dim wks As Worksheet
    Dim rng As Range
    Set wks = ActiveSheet
    With wks
        On Error Resume Next
        Set rng = .Range("B3:G8").SpecialCells(xlCellTypeConstants, 23)
        On Error GoTo 0
        If Not rng Is Nothing Then
            rng.ClearContents
        End If
    End With
    Set wks = Nothing
    Set rng = Nothing
End Sub

Dieses Makro löscht nur die Werte im definierten Bereich, ohne die Formeln zu verlieren.


Tipps für Profis

  • Makro optimieren: Du kannst dein Makro für mehr Effizienz optimieren, indem du unnötige Fehlermeldungen unterdrückst und nur die benötigten Bereiche ansprichst.
  • Dokumentation: Füge Kommentare in dein Makro ein, um die Lesbarkeit zu verbessern. Dies ist besonders nützlich für die spätere Wartung.
  • Backup: Stelle sicher, dass du eine Sicherungskopie deiner Daten hast, bevor du das Makro ausführst, um Datenverlust zu vermeiden.

FAQ: Häufige Fragen

1. Kann ich das Makro anpassen, um nur bestimmte Zellen zu leeren?
Ja, du kannst den Bereich im Code anpassen, um nur bestimmte Zellen anzusprechen.

2. Was passiert, wenn ich das Makro auf einem geschützten Blatt ausführe?
Das Makro kann nicht ausgeführt werden, wenn das Blatt geschützt ist. Du musst den Schutz zuerst aufheben.

3. Funktioniert das Makro in Excel Online?
Nein, VBA-Makros sind in Excel Online nicht verfügbar. Du musst die Desktop-Version verwenden.

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