Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
800to804
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
800to804
800to804
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Formeln in Werte umwandeln in einer Megadatei

Formeln in Werte umwandeln in einer Megadatei
12.09.2006 13:44:58
Bernhard
Wer kann mir helfen. Habe eine Megadatei von ca 58 MB, die aber sehr lange zum öffnen braucht und auf Computern mit geringem Speicher sich überhaupt nicht öffnen lässt. Die Idee ist alle Formeln in Werte umzuwandeln und nicht mehr benötigte Tabellenblätter zu entfernen um dadurch die Grösse zu verringern und zu vereinfachen. Das Summary Blatt besteht aus 19.500 Zeilen und 60 Spalten die Grossteils Formeln enthalten und wie gesagt und Werte umgewandelt werden sollen. Die Automatische Berechnung ist auf manuell gestellt, da sonst nichts funktioniert. Das Kopieren des ganzen Blattes und Einfügen mit Werten wird nur zum Teil ausgeführt, d.h. bis Zeile 4.352 sind Werte aber danach finden sich immer noch Formeln. Als 2. Alternative habe ich eine Macro mit einer Schleife erstellt, das Zeile für Zeile durchläuft und die Formeln in Werte umwandeln soll. Siehe folgenden Code:

Sub ChangeCellValues()
Dim Row As Integer, Col As Integer
Dim iRow As Integer, iCol As Integer
'Set iRow entsprechend der Reihenanzahl
iRow = 19500
'Set iCol entsprechend der Columnanzahl
iCol = 60
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Range("A1").Select
For Col = 1 To iCol
For Row = 1 To iRow
ActiveSheet.Cells(Row, Col).Value = Cells(Row, Col).Value
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Next Row
Next Col
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
End Sub

Dies nimmt aber sehr viel Zeit in Anspruch und führt schlussendlich zu einem Absturz von Excel (keine Rückmeldung).
Hat jemand eine Lösung parat wie man mit solchen Megadatein umgehen soll?

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formeln in Werte umwandeln in einer Megadatei
12.09.2006 14:39:13
Stefan
Hallo Bernhard,
Ich verstehe eine Zeile in Deinem Code nicht, die mit "ActiveSheet.Cells...". Fuer mich macht die nicht wirklich was. Allerdings fehlt fuer mich eine Zeile, naemlich genau an dieser Stelle ein "ActiveSheet.Cells(Row, Col).Select".
Da Du die Selection nie veraenderst, wird immer nur die Zelle A1 kopiert und auch wieder genau dahin geschrieben. Das erklaert zwar nicht deinen Programm-Absturz, aber verhindert effektiv dass Du jemals ein Ergebnis bekommen wirst.
Schoene Gruesse
Stefan Br.
AW: Formeln in Werte umwandeln in einer Megadatei
12.09.2006 22:18:59
Daniel
Hallo
Schleifen sind sehr ineffektiv und meistens überflüssig.
versuche es mal mit folgenden Code:
Range("A1:BH19500").formula = range("A1:BH19500").value
Da es nur eine Zeile ist, kannst du es auch im direktfenster eingeben, ohne Makro
Flexibiltät in bezug auf Zeilen und Spaltenzahl erreichst du mit
Range("A1").currentregion.formula = range("A1").currentregion.value
Falls das Datenpaket immer noch zu dick ist, kannst du ja immer noch eine Schleife bauen, aber da würde ich erstmal Spaltenweise vorgehen:

Sub Formeln_ersetzen()
Dim i as long
For i = 1 to 60
Columns(i).formula = columns(i).value
next
End Sub

gruß, Daniel
Anzeige

308 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige