Excel VBA Inhalt von ausgeblendeten Zellen löschen.
#1
Smile 
Hallo zusammen,

Ich habe eine relativ große Excel Datei mit verschiedensten Formeln.
Beim Sortieren braucht diese sehr lange um jede Zelle zu berechnen.
Deshalb habe ich 2 Buttons hinzugefügt womit man einmal die Formeln löscht, dann Sortieren kann wie man möchte und mit dem anderen Button die Formeln wieder in die Zellen einträgt.
Wenn man nun die Formeln löscht und in der Datei fleißig am Filtern ist und die Formeln wieder einträgt und dann wieder löschen möchte, funktioniert dies nicht.
Excel trägt zwar die Formeln in allen Zellen ein (AUCH DIE MAN AUSGEBLENDET HAT) jedoch löscht er diese nicht mehr sondern nur in den Zellen die man sieht, nicht in den ausgeblendeten Zellen.

Code:
Dim Bereich As Range
Set Bereich = Tabelle1.Range("AU11:AW50000,AY11:AY50000")

    Bereich.Value = ""
 Hat hier jemand zufällig einen Tipp?

Danke!
Antworten Top
#2
Hallo,

das liegt bestimmt nicht nur an den Formeln. Lade mal deine Datei hoch, dann kann man auf Fehlersuche gehen.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Antworten Top
#3
Hi

Hast du einfach mal versucht die Formel drin zu lassen und vor dem Filtern die Berechnung für Formel auf Manuell zu stellen und dann wieder auf automatisch.

Gruß Elex
Antworten Top
#4
Hi,

leider kann ich die Datei nicht hochladen das viele Sensible Daten enthalten sind.
Die Datei geht von A1:FH25010.

Ich habe es auch schon versucht die Berechnung auf manuell zu stellen und dann gefiltert.
Dauert jedoch auch sehr lange. 

Ich denke es benötigt eine andere Formel um auch im ausgeblendeten Bereich den Inhalt zu löschen.
Antworten Top
#5
Hallo,

für den Fall, dass du volatile Funktionen verwendest, könnte das die Ursache sein. Dazu gehören: 
  • Heute

  • Jetzt

  • Zufallszahl

  • Indirekt

  • Bereich.Verschieben

  • Zelle

  • Info
ansonsten ist alles nur Spekulation. Man kann eine Datei auch anonymisieren.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
[-] Folgende(r) 1 Nutzer sagt Danke an Klaus-Dieter für diesen Beitrag:
  • Pascala
Antworten Top
#6
Du stellst also einen Zeitunterschied fest wenn feste Daten in den Zellen stehen oder Formeln die aber nicht berechnet werden.
Eine Testdatei wäre schon nicht verkehrt. 

Das Problem mit den gefilterten Bereich konnte ich nachvollziehen.
Wenn man es mit Spe.Cells und doppelt macht, scheint es zu gehen.

Code:
Range("A2:A10").SpecialCells(xlCellTypeFormulas) = ""
Range("A2:A10").SpecialCells(xlCellTypeFormulas) = ""
Range("A2:A10").SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-17]C[-1]+4"
Range("A2:A10").SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-17]C[-1]+4"

Gruß Elex
[-] Folgende(r) 1 Nutzer sagt Danke an Elex für diesen Beitrag:
  • Pascala
Antworten Top
#7
Perfekt Dankeschön!

es klappt nun mit: SpecialCells(xlCellTypeFormulas) = ""
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste