Witam posiadam plik w exel 2007, plik posiada 1000 arkuszy, jeśli z edytuje jeden arkusz i zapisze zmiany, plik się długo zapisuje, jak to zoptymalizować. Plik nie jest duży zawiera tylko ok 10 MB choć posiada 1000 arkuszy (powielony szablon).
Spróbuj zapisać jako .xlsb Excel Binary Workbook
Wczytaj z tego pliku i zapisz normalnie jako .xls
Potrenuj na kopii, oczywiście.
Może masz słaby komputer?
A jeżeli nie, to może Office Ci szwankuje?
A jeżeli nie, to może spróbuj ten plik otworzyć, edytować i zapisać na innym komputerze.
1000 arkuszy, w każdym praktycznie to samo… Jesteś pewny, że nie można tego było zaprojektować lepiej?
Jak lepiej schemat jest taki sam , tylko dane się zmieniają. Tak wiem są bazy danych, ale to tylko 1000 arkuszy a nie 1000000.
Nie mam pojęcia, przecież tego nie widziałem
Wydaje mi się że tysiąc to sporo jak na zwykły arkusz kalkulacyjny - mi przynajmniej nigdy nie przyszło do głowy robić coś takiego . Sam zauważyłeś, że są bazy danych. Może jeśli już korzystasz z pakietu MS to spróbuj zrobić to przynajmniej w access? Tam pewnie zrobisz to jedną kwerendą i raportem co tutaj robisz tysiącami stron
Zresztą w Excel pewnie też byś to załatwił makrami, tylko może być więcej dłubania.
Tak sobie myślę, że bez makr też by się obeszło. Jeden arkusz z bazą danych, drugi z szablonem podstawiającym dane z bazy na podstawie pola wyboru, lub makra… Coś by się pewnie wymyśliło
Hej,
- Podasz choć najważniejsze parametry komputera, tzn. ilość pamięci RAM, procesor i rodzaj dysku?
- Do Office’a masz zainstalowane wszystkie poprawki, w tym SP3?
Pozdrawiam,
Dimatheus
Intel core 2 duo 2 ghz. 4GB RAM dysk SSD, wiem to nie jest demon prędkości raczej zabytek (ale w niektórych firmach czas się zatrzymał na Windows xp, z jedno rdzeniowym CPU). Do rzeczy, takie rozwiązanie działało nie zastanawiałem się co by było lepsze, po prostu utworzyłem nowy plik i co najdziwniejsze z tą samą ilością arkuszy co poprzednio a miał 3 razy większy rozmiar. Nie wiem co było przyczyną wyczyścił puste komórki, zapisałem tak jak iJuliusz proponował, plik się zmniejszył do ok 1/3 stanu początkowego. Jeszcze macie pomysł jak go zoptymalizować.
Hej,
Generalnie nie powinno być jakiegoś mega problemu, przy takiej konfiguracji.
A jakbyś zapisał go do formatu xlsx?
Musielibyśmy zobaczyć, jak plik wygląda. Dane oczywiście można usunąć bądź wpisać zupełnie losowe. Ale ciężko optymalizować coś, czego się nie widziało na oczy.
Pozdrawiam,
Dimatheus
Zeszyt1.zip (405,9 KB)
Przykładowy pusty skoroszyt z 1300 arkuszami w rekordzie A1w arkuszu1 wpisuje jakiś tam tekst czy liczby i zapisuje mi to ok 5s przy jedno arkuszowym skoroszycie zapis jest natychmiastowość jak optymalizować taki skoroszyt?
Hej,
Generalnie zrobiłem dwie operacje na plikach:
- otworzyłem, dodałem dane w pierwszej z zakładek i zapisałem plik w tym samym formacie. Zapis trwał jakieś 1,5 sekundy i wielkość pliku zmniejszyła się do około 2,5 MB,
- otworzyłem, dodałem dane w pierwszej z zakładek i zapisałem plik w formacie XLSM (czyli XML z obsługą makr) i przeliczanie trwało koło 4 sekund. Plik zmniejszył się do rozmiaru poniżej 1 MB.
Fakt, że operacji dokonywałem na MS Office 2016 w wersji x64 i na dość nowym i mocnym laptopie z dyskiem SSD. Na słabszym sprzęcie te 5 - 10 sekund przy zapisie to raczej będzie normalne.
To wszystko zależy od tego, jakie dane tam przechowujesz. Czy faktycznie potrzebujesz tysiąca skoroszytów, czy możne wrzucić dane do jednego z dodatkową daną w kolumnie odnośnie jakiegoś grupowania, które teraz realizujesz w kolejnych zakładkach. Do czego służy w ogóle ten plik?
Pozdrawiam,
Dimatheus
Plik to taka baza danych, do arkusza są wprowadzane dane tekstowe (nie są przetwarzane), są zapisywane i drukowane.
Mi się libreoffice wywala przy tym - krzyczy że makra zużywają za dużo czasu, czy coś Możesz to wrzucić tylko z kilkoma skoroszytami żebym mógł zrozumieć o co chodzi? Albo wytłumacz/rozrysuj jak to działa, bo jestem pewny, że można to zaprojektować dużo oszczędniej.
Hej,
Tam na razie w pliku nie ma zupełnie nic poza 1300 pustymi zakładkami i jednym makrem, który te zakładki tworzy.
Skoro tak, to trzeba zmienić sposób drukowania albo pozostać przy tym, co jest aktualnie.
Pozdrawiam,
Dimatheus
To tak wygląda jakby exel zapisywał dane w całym pliku(albo sprawdzał czy coś się nie zmieniło) a nie w wybranym arkuszu.
Hej,
Zgadza się. Przy zapisywaniu przerabiane są wszystkie dane, nie tylko zmiany dokonane na pliku. Dobrze widać to przy obszernych plikach, które najpierw przeliczają się w całości, a dopiero później zapisują.
Pozdrawiam,
Dimatheus
a czy da się ustawić aby tylko zapisywał używany arkusz
Hej,
Z tego co wiem, niestety nie.
Pozdrawiam,
Dimatheus