• DİKKAT !

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak Dosya Yükleme tamamen ücretsizdir.

Soru Exceli hızlandırmanın yolu

walterwhite

Yeni Üye
Katılım
14 Ara 2023
Mesajlar
29
Çözümler
1
Aldığı beğeni
9
Excel V
Office 365 TR
Konu Sahibi
Merhabalar,
Uzun süredir çalıştığım bir dosyam var, 25MB boyutunca macro formüller içeriyor. Daha önceleri çok hızlı çalışıyordu donmalar yaşanmıyordu. Şimdi inanılmaz kasmalar ve donmalar yaşanıyor sebebini bir türlü bulamadım. Çözüm rica edebilir miyiz.

Bilgisayarımın özellikleride iyi
11th Gen Intel(R) Core(TM) i7-11700 @ 2.50GHz 2.50 GHz
32,0 GB (kullanılabilir: 31,7 GB)
 

Olası Nedenler​

  • Veri Büyüklüğü ve Karmaşıklığı: Dosyanın boyutu 25 MB olsa da, zamanla içine eklenen veri miktarı ve formüllerin karmaşıklığı artmış olabilir. Bu, hesaplama süresini uzatır.
  • Volatile (Uçucu) Fonksiyonlar: DOLAYLI (INDIRECT), KAYDIR (OFFSET), BUGÜN (TODAY), ŞİMDİ (NOW) gibi uçucu fonksiyonlar her hücre değişikliğinde veya dosya açılışında yeniden hesaplanır. Dosyanızda bu tür fonksiyonların aşırı kullanımı performansı düşürebilir.
  • Gereksiz Hesaplamalar: Makrolarınızın veya formüllerinizin belirli aralıklarla gereksiz yere tüm çalışma sayfasını veya çalışma kitabını yeniden hesaplamaya zorlaması.
  • Tanımlı Adlar ve Aralıklar: Kullanılmayan veya hatalı tanımlanmış adlar ve dinamik aralıklar performansı etkileyebilir.
  • Harici Bağlantılar: Dosyanızın başka Excel dosyalarına, web sitelerine veya veri tabanlarına yaptığı harici bağlantılar varsa ve bu bağlantılar yavaş çalışıyorsa, dosyanız da yavaşlayabilir.
  • Koşullu Biçimlendirme: Yoğun ve karmaşık koşullu biçimlendirme kuralları hesaplama süresini artırabilir.
  • Grafikler ve Şekiller: Çok sayıda grafik, resim veya şekil, dosyanın boyutunu ve yükleme süresini artırabilir.
  • Kod Optimizasyonu Eksikliği: Makro kodunuzun verimsiz yazılmış olması (örneğin, hücre hücre döngü yerine aralıklarla çalışma, ScreenUpdating kapatmama, Events kapatmama).
  • Bellek Yetersizliği: Bilgisayarınızın belleği (RAM) dosyanın karmaşıklığıyla başa çıkmakta zorlanıyor olabilir.
  • Yazılım Güncellemeleri: Excel veya işletim sisteminizdeki güncellemeler bazen performansı olumsuz etkileyebilir.
  • Dosya Bozulması: Nadiren de olsa, uzun süreli kullanımda Excel dosyaları bozulabilir ve bu da performans sorunlarına yol açabilir.

Çözüm Önerileri​

  1. Makro Optimizasyonu:
    • Ekran Güncellemesini Kapatın: Makro çalışırken ekranın güncellenmesini kapatmak performansı önemli ölçüde artırır. Kodunuzun başına Application.ScreenUpdating = False ekleyin ve sonuna Application.ScreenUpdating = True eklemeyi unutmayın.
    • Olayları Devre Dışı Bırakın: Makro çalışırken gereksiz olayları (örneğin, hücre değişimi olayları) devre dışı bırakmak için Application.EnableEvents = False kullanın ve makro sonunda Application.EnableEvents = True olarak ayarlayın.
    • Otomatik Hesaplamayı Kapatın: Makro çalışırken Excel'in otomatik hesaplamasını kapatmak, özellikle büyük veri setleriyle çalışırken çok faydalıdır. Kodunuzun başına Application.Calculation = xlCalculationManual ekleyin ve sonuna Application.Calculation = xlCalculationAutomatic olarak ayarlayın. Ayrıca, makro sonunda ActiveWorkbook.Calculate ile manuel olarak hesaplama yaptırabilirsiniz.
    • Döngü Optimizasyonu: Hücre hücre döngüler yerine aralıkları kullanın. Örneğin, For Each cell In Range("A1:A1000") yerine tüm aralığı tek seferde okuyup işlemek daha hızlıdır.
    • Hızlı Kopyalama/Yapıştırma: Copy/PasteSpecial yerine doğrudan değer atamayı tercih edin: Range("A1:A10").Value = Range("B1:B10").Value.
    • Nesne Referanslarını Serbest Bırakın: Makro sonunda kullanılan nesneleri (örneğin, Set ws = Nothing) serbest bırakın.
  2. Formül Optimizasyonu:
    • Uçucu Fonksiyonları Azaltın: DOLAYLI (INDIRECT) ve KAYDIR (OFFSET) yerine DÜŞEYARA (VLOOKUP), İNDİS (INDEX), KAÇINCI (MATCH) kombinasyonlarını kullanmayı deneyin. Bu fonksiyonlar genellikle daha az hesaplama maliyeti taşır.
    • Formülleri Değere Dönüştürün: Eğer belirli formüllerin sonuçları sık sık değişmiyorsa, bu hücreleri kopyalayıp "Değerleri Yapıştır" seçeneğiyle formülleri statik değerlere dönüştürün.
    • Dizi Formüllerini Gözden Geçirin: Dizi formülleri çok güçlüdür ancak büyük aralıklarda performansı etkileyebilir. Gereksiz kullanımlardan kaçının.
  3. Veri ve Dosya Temizliği:
    • Kullanılmayan Satır/Sütunları Silin: Dosyanızda çok sayıda boş ancak biçimlendirilmiş satır veya sütun olabilir. Bunları silmek dosya boyutunu ve performansını iyileştirebilir. En son kullanılan hücreyi bulmak için Ctrl + End tuş kombinasyonunu kullanın ve fazlalıkları silin.
    • Tanımlı Adları Kontrol Edin: Formüller > Ad Yöneticisi'ne gidin ve kullanılmayan veya hatalı tanımlanmış adları silin.
    • Koşullu Biçimlendirme Kurallarını Sadeleştirin: Çok sayıda veya karmaşık koşullu biçimlendirme kuralı varsa, bunları basitleştirin veya azaltın.
    • Harici Bağlantıları Yönetin: Veri > Bağlantıları Düzenle'ye gidin ve gereksiz veya bozuk bağlantıları kesin.
    • Gizli Nesneleri Kontrol Edin: Bazen gizli grafikler, şekiller veya pivot tablolar dosyanın boyutunu artırabilir.
    • Dosya Formatını Kontrol Edin: Dosyanız hala .xls formatındaysa, .xlsm veya .xlsx formatına dönüştürmek performansı artırabilir.
  4. Donanım ve Yazılım:
    • RAM Yükseltmesi: Eğer bilgisayarınızın RAM'i düşükse, özellikle büyük Excel dosyalarıyla çalışırken yetersiz kalabilir. RAM'inizi yükseltmeyi düşünebilirsiniz.
    • Excel ve İşletim Sistemi Güncellemeleri: Excel ve Windows'unuzun güncel olduğundan emin olun. Bazen performans iyileştirmeleri güncellemelerle gelebilir.
    • Dosyayı Onarın: Nadiren de olsa, Excel dosyası bozulmuş olabilir. Dosyayı açarken "Aç ve Onar" seçeneğini kullanmayı deneyin (Dosya > Aç > Gözat > Aç butonunun yanındaki oka tıklayın ve Aç ve Onar).

Sorun Giderme Adımları​

  1. Sorunu İzole Edin:
    • Dosyanın bir kopyasını alın ve bu kopyada denemeler yapın.
    • Makroları devre dışı bırakarak dosyanın hızını test edin. Eğer makrolar kapalıyken hızlı çalışıyorsa, sorun büyük olasılıkla makrolardan kaynaklanıyordur.
    • Tüm sayfaları silip sadece bir sayfa bırakarak test edin. Eğer tek sayfada hızlı çalışıyorsa, sorun belirli bir sayfada veya sayfalar arası etkileşimden kaynaklanıyor olabilir.
  2. Adım Adım İnceleme:
    • Makrolarınızdaki hangi bölümlerin veya hangi formüllerin en çok zaman aldığını tespit etmek için Excel'in VBA (Visual Basic for Applications) ortamında kodunuzu adım adım (F8 ile) çalıştırabilir veya Debug.Print Timer komutunu kullanarak farklı bölümlerin çalışma sürelerini ölçebilirsiniz.
Bu adımları izleyerek dosyanızdaki performans sorunlarının nedenini tespit edip çözüme kavuşturabilirsiniz. Genellikle en büyük kazanımlar makro optimizasyonu ve uçucu formüllerin azaltılmasıyla elde edilir.

Dosyanızda hangi formüller kullanılıyor, kaç sayfa var, çok sık çalışan bir makro var mı.Makrolar sonsuz döngüye girerse ya da gereksiz yere tekrar çalışıyorsa sistem kaynaklarını tüketebilir.

Gereksiz adımları ve boş satır/sütunları temizle: Ctrl+End ile gerçek son hücreye git, oradaki veriler silinmiş olsa bile Excel bunları hâlâ saklayabilir.

Dosyayı başka isimle kaydet ("Save As"): Bu işlem genellikle iç temizlik yapar ve dosya boyutunu azaltır.

Eklentileri devre dışı bırak: Dosya → Seçenekler → Eklentiler → Git → Aktif olanları tek tek devre dışı bırakıp performansı gözlemle.
 
Dosya yapınızı bilmiyorum, eğer formülle kayıt oluşturuyorsanız ve bu kayıtlar üzerinde sonradan bir değiştirme yapmıyorsanız, bu kayıtları manuel olarak veya makro ile kopyalayıp, değer olarak yapıştırırsanız, dosyanız hızlana bilir.
 
25 mb bir excel dosyası için yüksek bir değer. bilgisayar konfigrasyonu iyi de olsa, excel sürümü yeni de olsa bu sorunlar yaşanabilir.
dosya görmeden ,makrolar kontrol edilmeden söylenebilecekler zaten az çok aynı olacak. imaj,resim vs. olmamalı, koşullu biçimlendirmeler olmamalı , hücre biçimlendirmeleri olmamalı, formüllerde veri aralıkları sadece gereken kadar olmalı gibi..
 
Excel açılırken mi yavaşlık var yoksa makrolar mi yavas çalışıyor?
 
Formüller>Hesaplama>Hesaplama Seçenekleri>El ile işaretleyin, daha sonra, excelde çalışma yapın, yine yavaşlık devam ediyorsa, yavaşlık muhtemelen makrolardan kaynaklanıyordur.
 
Konu Sahibi
Formüller>Hesaplama>Hesaplama Seçenekleri>El ile işaretleyin, daha sonra, excelde çalışma yapın, yine yavaşlık devam ediyorsa, yavaşlık muhtemelen makrolardan kaynaklanıyordur.
denedim maalesef aynı yavaşlık söz konusu, ve dataları kopyala yapıştırdığımda da sürekli araştır bölmesi açılıyor çok sinir bozucu halde çalışıyorum.
 
Dosyayı görmeden çözüm üretmek zor olacak. Tahmin üzerinden bir şeyler önerebiliyoruz.
Sayfanın kod bölümünde Worksheet_Change eventi varsa o kasıyor olabilir.
 
Dosyanızı chatgpt ye yükleyip, karşılaştığınız sorunu yazarak çözüm önerisi talep edebilirsiniz.
 
Konu Sahibi
sordum dosya içinde 2 sheetin çok yüklü datalar olduğunu söyledi fakat o datalar hep vardı,
 
Dosyanızda özel datalar yoksa özelden iletin bakalım.
 
Konu Sahibi
maalesef özel datalar olduğu için paylaşamıyorum. :( sağ tıkladığımda excellde copilot diye bir eklenti gelmiş ama onu kaldıramadım sanırım tüm olay bundan olabilir. Bu olayı nasıl iptal edebilirim . Office 365 kullanıyorum
 

Bu bağlantı ziyaretçiler için gizlenmiştir. Görmek için lütfen giriş yapın veya üye olun.

Windows cihazlarında "Copilot'ı etkinleştir" onay kutusunu temizleyin​

  1. Uygulamanızda (örneğin, Excel), Dosya > Seçenekleri > Copilot'a gidin.
  2. Copilot'ı Etkinleştir onay kutusunu temizleyin.
  3. Tamam'ı seçin ve ardından uygulamayı kapatıp yeniden başlatın.
Copilot'u yeniden açmak istiyorsanız bu adımları yineleyin, ancak 2. Adım'da Copilot'u Etkinleştir onay kutusunu seçin.
 
Sebebini bilmemekle birlikte yeni bir excel dosyasına alın tüm verileri. Ama önceki sayfadan veri kopyalarken değer olarak yapıştırın. Önceki veriyi aynen yapıştırınca aynı sorunlar oluşuyor. Benimde var 20mb civarında dosyam tüm işleri bu dosya üzerinden yapıyorum ağırlaşmasa bile bir kaç yıla bir bozuluyor dosya. Sürekli yedeklediğim için sıfırdan dosya oluşturup devam ediyorum. Başka çözümünü bulamadım.
 
Sebebini bilmemekle birlikte yeni bir excel dosyasına alın tüm verileri. Ama önceki sayfadan veri kopyalarken değer olarak yapıştırın. Önceki veriyi aynen yapıştırınca aynı sorunlar oluşuyor. Benimde var 20mb civarında dosyam tüm işleri bu dosya üzerinden yapıyorum ağırlaşmasa bile bir kaç yıla bir bozuluyor dosya. Sürekli yedeklediğim için sıfırdan dosya oluşturup devam ediyorum. Başka çözümünü bulamadım.
bunun çözümünü söyleyecek olursak bilgisayardaki donanımla alakalıdır. Üstüne versiyon olarak office programlarını güncel sürüm kullanmaya özen gösterirseniz eğer böyle bir sorun kalmayacaktır ortada.

İYİ ÇALIŞMALAR DİLERİM.
 
İntranet olduğu için sürümlere müdahale edemiyoruz hala 2019 kullanıyoruz ama donanım olarak i7 12. nesil ve 32 gb ram mevcut kodlar hızlı çalışıyor ancak bir süre sonra dosyanın bozulmasının önüne geçemiyoruz.
 
içindeki kodlarda eski veya değişik bir kod yazılmışsa eğer bunu excel kötü olarak algılamasından dolayı bunun için yapılan her işlemden sonra o dosyanın yedeğini almanızı gerekiyor. Baktınız sorun öylede çözülmez diğer dosya türü ile denerseniz belki çözülme ihtimali olabilir .xslb ikili bir şekilde kullanmayı deneyin birde xlxs doyasa sı olarak Onda kodları daha hızlı çalıştırıp ve verileri daha sağlıklı bir şekilde işlemesini yapıyor aynı zamanda antivürüsü kapatıp birde öyle denemenizi tavsiye ederim belki oda bozuyor olabilir dosyanızı kötü yazılım olarak algılayıp bozulduğu taktirde olmadı dosyayı onarım tekrar devam ederseniz daha iyi olur sizler içinde ama mutlaka yedeklerinizi almanızı tavsiye ederim.

Hiçbir zamanda yedek almadan işlem yapmayın böyle bir sorun var ise :)

İYİ ÇALIŞMALAR DİLERİM.
 
Geri
Üst