Wpis z mikrobloga

Mam problem z działaniem Excela. Strasznie wolno chodzi. Mam co prawda kilkanaście arkuszy w nim, niektore mocno rozbudowane. Dziwi mnie to ze dodam sobie troche kodu do VBA, klikne zapisz i caly program sie zawiesza. Wylaczylem automatyczne wykonywanie komorek przy zapisywaniu wiec nie wiem co takiego sie dzieje ze co nie zrobie to excel wariuje. Ktos wie o co moze chodzic?
#vba
#excel
  • 20
@Limonene: 300 KB xd Nie wiem czy to wina excela czy komputera ale jakiegos bardzo slabego nie mam zeby tak zamulalo. Dziwi mnie to ze tak naprawde nic nie robilem tylko wkleilem do VBA Suba, uruchomilem go i wszystko zadzialalo, a potem dalem zapisz i zawiesilo program
@taju: @Polinik: Przekopiowalem caaly kod VBA do czystego pliku w ktorym mam tylko jeden arkusz na korym chce teraz pracowac (ostatni arkusz tego duzego pliku). Zero problemow, wszystko sie szybko oblicza i zapisuje. Nie kumam w takim razie czemu skoro mam ten sam kod w duzym pliku tylko z wieksza liczbą arkuszy, to nagle zapisywanie trwa tak dlugo i uruchamia sie kod prawdopodobnie z innych arkuszy. Tak jakby te poprzednie
@degel123:

Tak, kod VBA możesz mieć nie tylko w modułach, ale też w arkuszach -- w każdym z tych Twoich kilkunastu arkuszy może być kod VBA, który Ci spowalnia.
Po prostu podpowiadam, gdzie jeszcze można szukać. ¯\_(ツ)_/¯
To pierwszy temat.

Drugi to zawijanie wierszy w formatowaniu komórek. Jak komórek jest dużo to przeliczanie zawijania zajmuje dużo czasu. Sam się kiedyś na tym naciąłem, jak pliki generowane przez system raportów otwierały mi
zainstaluje 64 bitowa wersje bo sie okazalo ze mam 32, nie znam sie wiec nie wiem czy to cos poprawi


@degel123:
64-bit wbrew obiegowej opinii nie działa szybciej. A czasami może nawet działać ciut-wolniej.
Różnica jest taka, że 32-bitowy Excel z jakiegoś powodu umie wykorzystać tylko 2gb ramu, jak mu zabraknie -- to przerywa kalkulację i zgłasza błąd braku pamięci. I pliki tylko 2gb.
64-bit korzysta w opór, praktycznie ile miejsca
@degel123: jak wrzucisz na jakiś hosting to wyślij link na PW, bez obejrzenia pliku to wróżenie z fusów. Co do 64bit to znacznie większe szanse że zaszkodzi niż pomoże, bo są pewne różnice, na dodatek kompilator 64 ma błędy
@brak_nicku: @Polinik: Za każdym razem jak dopisze jakis nowy Sub w VBA to wykonuja sie wszystkie funkcje we wszystkich arkuszach. Np. robie suba:

Sub si()
Cells(20,2)=4
End Sub

to wykonuja sie wszystkie komorki w ktorych jest odwolanie do byle jakiej funkcji w VBA (we wszystkich arkuszach). Jak zmienie wartosc w subie z 4 na 3 to od nowa wszystko sie wykonuje. Jak temu zaradzic?
@degel123:

Jak temu zaradzic?

Przy takiej ilości #!$%@? funkcji i procedur VBA to bym zaczął się zastanawiać, czy to jest dobrze zaprojektowany plik i czy nie da się tego wszystkiego, co robi VBA osiągnąć zwykłymi funkcjami albo Power Query.