Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
1612to1616
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
Inhaltsverzeichnis

Mappe wird immer größer trotz löschen v. Inhaltenh

Mappe wird immer größer trotz löschen v. Inhaltenh
08.03.2018 11:26:51
Linda
Hallo zusammen,
meine Excel-Mappe ist fast 50 MB groß, ich muss unbedingt die Datenmenge reduzieren, da die Datei auch per E-Mail versendet werden soll.
Ich habe bereits versucht unnötige Formeln rauszulöschen. Resultat: von 46 MB ist die Mappe auf 49 MB gewachsen.
Ich habe versucht Tabellenblätter in eine neue Mappe zu exportieren. Resultat: Die neue Mappe ist 2 MB größer als die alte Mappe, obwohl ich nicht alle Tabellenblätter exportiert habe.
Das kann doch wohl nicht wahr sein...
Ich bin über alle Tipps zur Reduzierung der Datenmenge dankbar.
Außerdem laufen meine Makros mittlerweile extrem langsam (30 min statt 3 min).
Auch das kann ich mir nicht erklären. Weiß jemand woran das liegen könnte?
Auch beim Bearbeiten der Tabellen, muss ich manchmal die Formeln anstoßen (also in die Zelle klicken und Enter drücken), damit das Ergebnis ausgespuckt wird. Das ist ein großes Problem, da ich ein Blattschutz eingerichtet wurde und diese dazu erst entfernt werden muss....

21
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Mappe wird immer größer trotz löschen v. Inhaltenh
08.03.2018 11:28:42
Hajo_Zi
prüfe mal mit Strg+Ende das Ende der Datei.
Zeilen und Spalten löschen +1 von Strg+Ende

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
AW: Mappe wird immer größer trotz löschen v. Inhaltenh
08.03.2018 11:39:42
Linda
Hallo Hajo,
danke für Deinen Tipp.
Weißt Du ob es eine Möglichkeit gibt alle Tabellenblätter auf einmal darauf zu durchsuchen? Ich habe über 100 Tabellenblätter. Vielleicht kann man irgendwie herausfinden wie groß die einzelnen Tabellenblätter sind um schneller an das Problem zu kommen?
Mappe wird immer größer trotz löschen v. Inhaltenh
08.03.2018 11:47:11
Hajo_Zi
mir ist kein Weg bekannt bzw. nur sehr aufwendig.
Ein Download wird wohl auch an der Größe der Datei scheitern.
Man müsste so eine Datei schon haben um den aufwendigen Code zu erstellen.
Gruß Hajo
Anzeige
AW: VBA
08.03.2018 11:47:14
Fennek
Hallo Linda,
der folgende Code prüft den "UsedRange" in allen Sheets und schreibt in das Direktfenster:

sub Test_usedR()
for i = 1 to Sheets.count
debug.print i, Sheets(i).name, Sheets(i).usedrange.address
next i
end sub
mfg
(ungeprüft)
AW: VBA
08.03.2018 11:59:34
Linda
Toll!! Danke Fennek.
Dieses Makro wurde sogar flott ausgeführt.
Leider hat es mein Problem nicht gelöst aber jetzt weiß ich wenigstens dass es nicht an der Tabellenlänge liegt....
AW: VBA
08.03.2018 12:03:56
Hajo_Zi
benutzt Du Rahmen? Man sollte nicht jede Zelle einzeln mit Rahmen versehen sondern immer Bereiche.
Gruß Hajo
Anzeige
AW: VBA
08.03.2018 12:07:01
Linda
Ja, ich benutze auch Rahmen. Macht das sooo viel aus?
Die Rahmen hatte ich auch vorher schon, als die Datei nur 36MB groß war.
AW: VBA
08.03.2018 12:15:01
Hajo_Zi
benutze eine Neue Datei. Formatiere Zelle A1 mit Rahmen. Kopiere Dies auf A2:A1000 und speichere die Datei.
Jetzt mache eine neue Datei und Formatiere A1:A1000 mit einmal mit Rahmen und speichern.
Da Du mir nicht glaubst.
Ich bin dann raus, da mir nicht geglaubt wird.
Gruß Hajo
och HaJo, du armer,...
14.03.2018 17:16:43
Oberschlumpf
...gebeutelter, unverstandener Forumshelfer
Warum gehst du eigentlich nich in Forumsrente?!
Sorry, das musste mal sein...
Anzeige
AW: Anzahl Shapes
08.03.2018 12:06:14
Fennek
ja, wenigstens etwas.
Der nächste Schritt ist es nach Shapes, Bildern usw zu suchen. Diese können auch nicht sichtbar sein.
Anstelle von "UsedRange" einfach Shapes.count eingeben.
mfg
AW: Anzahl Shapes
08.03.2018 12:11:07
Linda
Was meinst Du mit Shapes?
Bilder habe ich keine drin.
Ich habe deinen Befehl ausgeführt, kann aber mit dem Ergebnis nicht wirklich was anfangen.
AW: Anzahl Shapes
08.03.2018 12:17:39
Linda
q
AW: Pivot-Tabellen
08.03.2018 12:24:21
Fennek
Hallo,
jede Pivot kopiert die Daten in den Pivot-Cache (nicht sichtbar.
Wieviele Pivots gibt es?
mfg
AW: Anzahl Shapes
08.03.2018 12:28:11
Zwenn
Hallo Linda,
Fennek geht davon aus, dass sich Grafische Elemente in Deinen Tabellen angesammelt haben. Das Problem kenne ich auch. Es handelt sich dabei um kleine Quadrate, die allerdings ausgeblendet sind, sofern vorhanden. Woher die kommen, keine Ahnung. Aber unter folgendem Link kannst Du nachlesen, wie Du sie los wirst.
(Dieses blöde riesiege blaue Fenster unten auf der Webseite einfach mit dem Butto "Schließen" nach unten fahren)
http://www.computerwissen.de/office/excel/artikel/objekte-und-grafiken-in-excel-tabellen-schnell-und-einfach-entfernen.html
Der Grund, warum Deine Datei größer wird, obwohl Du Daten entfernt hast, könnte an der Komprimierung liegen. Klingt erstmal paradox, weiß ich. Seit MS die Formate wie .xlsx eingeführt hat, werden die Officedateien beim Speichern automatisch komprimiert. Das sind einfach ZIP-Archive, in denen die eigentlichen Dateien liegen, mit denen man arbeitet.
Wenn Du nun Daten löschst, kann es sein, dass der Kompressionsalgorithmus die übrigen Daten wesentlich ungünstiger komprimieren kann. Das Ergebnis ist eine scheinbar größere Datei.
Viele Grüße,
Zwenn
Anzeige
AW: Anzahl Shapes
08.03.2018 12:49:03
Hardy
Hallo Linda,
schon mal versucht, die Datei als .xlsb zu speichern?
hier auch noch mal ein Link für dich:
https://www.tabellenexperte.de/ultimative-excel-tipps-zum-verringern-der-dateigroesse/
Gruß
Hardy
Statistik über Blätter
08.03.2018 13:06:49
EtoPHG
Hallo Linda,
Diesen Code in ein Modul und laufen lassen: Addiert ein neues Blatt (das auch wieder gelöscht werden kann):
Sub UsedRangeStats()
Dim ws As Worksheet, wsStat As Worksheet, lRow As Long, lFormCount As Long
On Error Resume Next
Application.DisplayAlerts = False
Worksheets("ws_Statistics").Delete
Application.DisplayAlerts = True
On Error GoTo 0
lRow = 1
Set wsStat = Worksheets.Add(Worksheets(1))
With wsStat
.Name = "ws_Statistics"
.Cells(lRow, 1) = "Blattname"
.Cells(lRow, 2) = "Zeilen"
.Cells(lRow, 3) = "Spalten"
.Cells(lRow, 4) = "Zellen"
.Cells(lRow, 5) = "Formeln"
.Cells(lRow, 6) = "Bed.Formatierte Zellen"
.Cells(lRow, 7) = "Kommentierte Zellen"
.Cells(lRow, 8) = "Query+Listobjects"
.Cells(lRow, 9) = "Pivottables"
.Cells(lRow, 10) = "Shapes"
For Each ws In Worksheets
If ws.Name  .Name Then
lRow = lRow + 1
.Cells(lRow, 1) = ws.Name
.Cells(lRow, 2) = ws.UsedRange.Rows.Count
.Cells(lRow, 3) = ws.UsedRange.Columns.Count
.Cells(lRow, 4) = .Cells(lRow, 2) * .Cells(lRow, 3)
On Error Resume Next
lFormCount = 0
lFormCount = ws.UsedRange.SpecialCells(xlCellTypeFormulas).Count
.Cells(lRow, 5) = lFormCount
lFormCount = 0
lFormCount = ws.UsedRange.SpecialCells(xlCellTypeAllFormatConditions).Count
.Cells(lRow, 6) = lFormCount
lFormCount = 0
lFormCount = ws.UsedRange.SpecialCells(xlCellTypeComments).Count
.Cells(lRow, 7) = lFormCount
On Error GoTo 0
.Cells(lRow, 8) = ws.QueryTables.Count + ws.ListObjects.Count
.Cells(lRow, 9) = ws.PivotTables.Count
.Cells(lRow, 10) = ws.Shapes.Count
End If
Next
End With
End Sub
Gruess Hansueli
Anzeige
AW: Statistik über Blätter
12.03.2018 09:31:50
Linda
Hallo zusammen,
danke für die vielen Tipps und sorry für die späte Rückmeldung, war im Krankenstand...
Hab jetzt mal Hansuelis Makro ausgeführt. Hat ewig gedauert... aber jetzt habe ich ein Ergebnis. Könnt Ihr Euch damit die Dateigröße von fast 50MB erklären?
https://www.herber.de/bbs/user/120348.xlsx
Vermutlich ist es einfach die Datenmenge
12.03.2018 10:59:24
Zwenn
Hallo Linda,
in Deiner Datei Befinden sich 127 Tabellen mit insgesamt 8.022.598 verwendeten Zellen. In 2.190.509 dieser Zellen stehen Formeln und 3.973.039 Zellen sind mit bedingter Formatierung versehen. Nun weiß ich natürlich nicht, was Du für Daten da drin hast. Aber wenn ich mal im Durchschnitt für jede Zelle, Formel und bedingte Formatierung 15 Byte annehme, dann kommt man auf 203 MB. Ob eine Kompression auf 50 MB, also 25 %, realistisch ist, hängt von Deinen Daten ab. In einer Testdatei mit teilweise sehr ähnlichem Text in 568.499 Zellen, erreiche ich eine Kompression auf 10 % der Datenmenge.
Das mit den 15 Byte ist natürlich eine sehr willkürliche Annahme und ich kenne auch deinen echten Kompressionsfaktor nicht. 1 Byte entspricht einem Zeichen. Kannst Du abschätzen, wieviele Zeichen Du etwa pro Zelle verwendest? Wieviele Zeichen die ganzen Formeln in den Zellen und für die Bedingte Formatierung im Durchschnitt etwa haben? Dann würde die Größe der unkomprimierten Datenmenge realistischer.
Vermutlich kannst Du die Dateigröße vor allem dadurch verkleinern, dass Du Bedingte Formatierung nur dort einsetzt, wo sie wirklich gebraucht wird. Auch die Anzahl der Formeln lässt sich vielleicht verringern. Oder können sich die Werte in allen ~2 Mio. Zellen mit Formel durch die weitere Bearbeitung der Datei noch ändern?
Vielleicht sieht jemand anders noch etwas in den Daten, die Du zur Verfügung gestellt hast. Deshalb lasse ich den Beitrag mal offen.
Viele Grüße,
Zwenn
Anzeige
Habe mal in die Rohdaten geschaut
12.03.2018 12:05:19
Zwenn
Hallo Linda,
da ich neugierig war, habe ich nun mal in die Rohdaten einer Excel-Datei geschaut. Mit meinen angenommenen 15 Zeichen pro Zelle liege ich mit Sicherheit um einiges unter der durchschnittlichen Menge, die Excel für eine Zelle speichert.
Beispiel für eine Zelle mit Formel:
In Zelle E20 steht die Formel =SUMME(E3:E18)/12. Die Zelle ist als Ganzzahl mit Tausender-Trenner formatiert. Es wird die Zahl 82.258 angezeigt. Formel und Zahl ergeben so also zusammen 23 Zeichen, also 23 Byte.
Excel speichert die Daten in XML-Dateien ab. Für meine Zelle E20 ergibt sich daraus inklusive XML-Tags:

<c r="E20" s="3">
<f>SUM(E3:E18)/12</f>
<v>82258.333333333328</v>
</c>
Das sind 76 Zeichen. Die Zeilenumbrüche und die Einrückungen muss man wieder abziehen, weil diese in den XML-Dateien eingespart werden. Dann kommt man auf 67 Zeichen bzw. Byte.
Du kannst einfach selber mal nachsehen, wieviel Speicherplatz Deine Tabellen wirklich brauchen, indem Du die fragliche Excel-Datei in ein eigenes Verzeichnis kopierst. Dort erweiterst du den Dateinamen hinter dem .xlsx einfach mit .zip Anschließend entpackst Du dieses ZIP-Archiv und gehst in das Verzeichnis \xl\worksheets. Da liegen Deine 127 Tabellen als einzelne XML-Dateien. Schau mal nach, wieviel Speicherplatz die alle zusammen belegen und dann noch, wie groß das Gesamte entpackte ZIP-Archiv ist. Anahand der Differenz können wir dann sehen, ob Excel noch in anderen Dateien größere Datenmengen gespeichert hat und wir können den Kompressionsfaktor ausrechnen. Das ist ja nur gepackt zu entpackt.
Viele Grüße,
Zwenn
Anzeige
Außerdem speichert Xl auch die Versionsgechichte …
08.03.2018 14:11:59
Luc:-?
…der Mappe, Linda,
um ggf frühere Zustände wiederherstellen zu können. Auch ein Grund, warum die Mappe nach Löschungen paradoxerweise größer wird.
Gruß, Luc :-?
AW: VBA event-makros
08.03.2018 14:25:23
Fennek
Hallo,
eine weitere Möglichkeit sind event-Makros, die Daten/Formatierungen kopieren.
mfg

27 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige