Gibt es eine Möglichkeit, alle Daten in einem Zellbereich zu löschen, aber die Formel beizubehalten. Meine Beispieldatei ist eine einfache Berechnung, die Zahlen von C2: C5 zusammenfasst und dann die Summe in Sheets ("Zusammenfassung"). Bereich ("B2"). Wenn Sie auf die Schaltfläche klicken, werden Daten im Bereich A2: C5 gelöscht. Die Formeln in den Zellen A2: C5 werden jedoch ebenfalls gelöscht.Löschen Sie Daten im Zellbereich, behalten Sie aber die Formel
Mein ideales Ergebnis ist, dass die Formel im Bereich (A2: C5) beibehalten wird.
mycode:
Private Sub CommandButton1_Click()
Dim sum As Worksheet, ws As Worksheet
Dim c As Range
Set sum = Sheets("Summary"): Set ws = Sheets("Sheet1")
sum.Range("B" & sum.Range("B1000000").End(xlUp).Offset(1, 0).Row) = WorksheetFunction.sum(ws.Range("C2:C" & ws.Range("C100000").End(xlUp).Row))
'ws.Range("A2:C" & ws.Range("A1").SpecialCells(xlCellTypeLastCell).Row).ClearContents
For Each c In Sheet1.Range("A2:C9")
If Not c.HasFormula Then c.ClearContents
Next c
End Sub
In Ihrem Code, lösche einfach nicht alles in der Spalte ** 'C' **. Fügen Sie dann in Ihrer Formel in Zellen in der Spalte "C" ** eine Bedingung "IF" ** hinzu, um zu prüfen, ob in der entsprechenden Zeile in Spalte "A" und "B" ein Wert vorhanden ist. Wenn dies nicht der Fall ist, setze einfach den Wert in der Zelle in der 'C' Spalte auf nichts. – Zac
Ich habe gerade etwas in meinem Code geändert. Und wenn ich den Knopf drücke, löscht es nur die Zellen A: B, aber nicht die C. –
Hallo Zac, das hilft mir sehr, aber was passiert, wenn Spalte A und B Formeln wie = sumifs haben. Das ist etwas, was ich wirklich beheben wollte. –