10 dk'da açılan dosya için performans geliştirme

muratnahcivani

Altın Üye
Katılım
23 Mayıs 2011
Mesajlar
43
Excel Vers. ve Dili
excell 2003 türkçe
Altın Üyelik Bitiş Tarihi
04-11-2024
Herkese merhabalar,

Yıllar içerisinde buradan aldığım destekler sayesinde işletmenin basit hesaplarını kalem kalem maliyetleri ayıracak kadar geliştirdim. Bir veritabanı dosyasına (SA) satış, (AL) ödeme, (MA) mamul alış, (HV) ödeme olarak kodlayarak her gün bütün verilerin girişini yaptım.

Bu verileri kullanarak da 15 kalem ürünün satış, 17 kalem ürünün alış ve de 14 kalem ürünün dinamik maliyetini hesaplayan, bu maliyetlere göre de günlük masraf, kar-zarar hesabı yapan bir hesap dosyası oluşturdum. Yılın aylarında pek yavaşlamayan dosya, 10. aya girmemizle 250. satırlara geldi ve her gün 222 sütunda 250 satır işlemi hesaplaması 10 dakikayı bulmaya başladı.

Yeni yıla girmeden dosyayı elden geçirmeye karar verdim. Algoritmada kendini tekrar eden işlemlerin bir kısmını temizleyeceğim, ama eksik bilgimle yaptırdığım bazı işlemler için burada sizden yardım ve fikir desteği isteyeceğim. Aşağıda maddelediğim işlemlerin dosyanın yavaşlamasına sebep olduğuna dair şüphelerim var. Fikrinizi bekliyorum.

1- A1 satırında =bugün() bulunmakta. a satırının devamında da tarih girdileri bulunmakta. mevcut gün ve geçmiş günlerin bütün satırlarındaki hesaplamalarda formulleri
Kod:
=(eğer(a3<=a1;"";"")
döngüsü ile başlatıyorum. bu şekilde bugün ve geçmişteki günler için sonuçları gösterirken, ileriki sütunlar boş kalıyor. görüntü kirliliği yaratmadığı gibi verilerin yazdığı en alt satır mevcut günün hesapları oluyor. Daha kolay bir uygulaması mevcut mu?

2- Genel ciro hesaplaması için 15 kalem ürünün satırlarını tek tek toplanıyor.
tabloda ürün1 satış ürün2 satış şeklinde bir dizilim mevcut. toplama yaparken tek tek hücre bilgisini toplatıyorum.
Kod:
=EĞER(A18<=$A$1;(T18+V18+X18+Z18+AD18+AF18+AH18+AJ18+AL18+AN18+AP18+AR18+AB18+P18+R18);"")
T V X Z Sütunları aslında satış sütunları. bu satırda bulunan formulü en son doldurduğu için böylesi bir toplama işlemini yaptırmanın yavaşlığa katkı sağladığını düşündüm. Bunu çoketopla ya da topla.çarpım ile kolaylaştırabilir miyim.

3- 14 kalem ürünün de alış fiyatlarına göre maliyeti dinamik olarak hesaplanıyor. acaba bu hesaplamaları ayrı sekmede yapmak performansı geliştirir mi?

4- hesaplama adımlarını ayrı satırlara yayarak performansı arttıracağımı sanarak bir hata yapmışım ve şu anda dağıttığım işlemleri birleştirerek daha kompleks formüllerle çözmeye çalışıyorum. bu konuda dosyaya bakarak fikir verebilirseniz çok sevinirim
 

Ekli dosyalar

Son düzenleme:

Merhum İdris SERDAR

Moderatör
Yönetici
Katılım
21 Ekim 2005
Mesajlar
17,094
Excel Vers. ve Dili
Excel, 365 - İngilizce
.

Dosyanız çok karışık ve dağınık.

Verilerinizi günlük olarak veri tabanı şeklinde bir tabloda tutun. Sonra bunlara göre dilediğiniz şekilde daha hızlı ve dinamik olarak raporlar elde etmek kolay olacak.

Bu nedenle Tablo ve Özet Tablo konularını inceleyiniz.


.
 

muratnahcivani

Altın Üye
Katılım
23 Mayıs 2011
Mesajlar
43
Excel Vers. ve Dili
excell 2003 türkçe
Altın Üyelik Bitiş Tarihi
04-11-2024
.

Dosyanız çok karışık ve dağınık.

Verilerinizi günlük olarak veri tabanı şeklinde bir tabloda tutun. Sonra bunlara göre dilediğiniz şekilde daha hızlı ve dinamik olarak raporlar elde etmek kolay olacak.

Bu nedenle Tablo ve Özet Tablo konularını inceleyiniz.


.
Bu dosya veritabanındaki verileri işleyen dosya. raporları çekmek için bu dosyadaki hesapların (bence) hepsinin yapılması gerekiyor. merak ettiğim, bu dosyanın bölümlerini ayrı sekmelere bölsem, performansı arttırır mı? Ya da her bir formüle başlangıçta bir tarih sorgusu yaptırmak yerine tüm satır için başka bir çözüm mevcut mudur?

bugün bu soruları sormamın sebebi karışık olan sistemi yeniden düzenlerken, yavaş çalışan bir dosya hazırlamak istememem
 

Merhum İdris SERDAR

Moderatör
Yönetici
Katılım
21 Ekim 2005
Mesajlar
17,094
Excel Vers. ve Dili
Excel, 365 - İngilizce
Bu dosya veritabanındaki verileri işleyen dosya. raporları çekmek için bu dosyadaki hesapların (bence) hepsinin yapılması gerekiyor. merak ettiğim, bu dosyanın bölümlerini ayrı sekmelere bölsem, performansı arttırır mı? Ya da her bir formüle başlangıçta bir tarih sorgusu yaptırmak yerine tüm satır için başka bir çözüm mevcut mudur?

bugün bu soruları sormamın sebebi karışık olan sistemi yeniden düzenlerken, yavaş çalışan bir dosya hazırlamak istememem
.

Önce ana veri tabanınızdan çektiğiniz verileri, veri tabanı mantığı çerçevesinde bir tablo yapınız. Sonra yapılacak işlemler formül veya özet tablo ile istediğiniz raporları sade, hızlı ve kolaylıkla elde etmeniz mümkün olabilecek. Örneğin aylık toplamlar için pek çok formül kullanıyorsunuz. Bu da dosyanın yavaşlamasına neden oluyor. Oysa özet tablo ile bu daha kolaydır. Ve dosyayı kasmaz. Bu sadece bir örnek diğerleri içinde aynı şey söz konusu.

.
 
Katılım
11 Ekim 2011
Mesajlar
61
Excel Vers. ve Dili
2013 TR
Altın Üyelik Bitiş Tarihi
27.05.2019
Excel dosyanızı farklı kaydet yapıp ikili (binary) kaydedin. Biraz daha hızlı açılabilir.
 
Üst