Bu dosya, mağazaların tarih bazlı giriş ve çıkış hareketlerinden her mağaza için günlük kapanış stok adedini hesaplar. Aynı sonuç farklı yöntemlerle üretildiği için her yöntem ayrı bir sayfada karşılaştırılabilir.
Dosya makro içerir, açarken makroları etkinleştirmeniz gerekir.
KTF sayfasında kullanıcı tanımlı fonksiyon şu şekilde çağrılır:
Python sayfalarında Excel içinde Python desteği kullanılır; formül aralıkları parametre olarak alır:
Dosya makro içerir, açarken makroları etkinleştirmeniz gerekir.
Dosyanın içeriği
Her sayfada sol tarafta günlük hareket tablosu, ortada başlangıç stok tablosu, sağda ise hesaplanan sonuç alanı bulunur.- excel365: Hareket tablosunda Mağaza, Tarih, Giriş ve Çıkış sütunları yer alır. Sonuç J2 hücresindeki formülle Mağaza, Tarih, Giriş, Çıkış ve Kapanış sütunları olarak üretilir.
- power_query: Sonuç alanı J2:N13 aralığında DışVeri_1 adlı bağlantıyla tutulur; hesap Power Query ile yapılır.
- vba1 ve vba2: Sonuçlar makrolarla J:N sütunlarına yazılır.
- KTF: Sonuç, kullanıcı tanımlı fonksiyon ve Python formülüyle üretilir.
- python: Sonuç J2 hücresindeki Python formülüyle üretilir.
Kullanılan formüller
excel365 sayfasında tek bir dinamik dizi formülü kullanılır. Formül LET, SCAN, LAMBDA, TAKE, HSTACK, VSTACK, VLOOKUP, OFFSET ve SEQUENCE fonksiyonlarından oluşur. Mağaza değiştiğinde başlangıç stoğu tablodan alınır, aynı mağazada ise bir önceki kapanışa giriş eklenip çıkış düşülür. Bu formül Excel 365 gerektirir.KTF sayfasında kullanıcı tanımlı fonksiyon şu şekilde çağrılır:
=StokHesaplaKTF(G3:H5;B3:E13)
=PY(0,0,G2:H5,B2:E13)
Makrolar
Kodlar Module1 içindedir. Dosyada dış bağlantı, dosya silme gibi işlem yoktur.- StokHesapla: Başlangıç stoklarını Scripting.Dictionary nesnesine yükler, hareket satırlarını sırayla gezer ve kapanış stoğunu satır satır hesaplayıp J:N sütunlarına yazar. Önce J3:N65536 aralığı temizlenir. Mağaza stok tablosunda yoksa "Stok bilgisi bulunamadı" yazılır. İşlem sonunda bilgi mesajı gösterilir.
- StokHesaplaDizi: Aynı mantıkla çalışır; sonuçları önce bir dizide toplar, sonra tek seferde sayfaya yazar.
- StokHesaplaKTF: Aynı hesabı sayfa formülü olarak çağrılabilen fonksiyon biçiminde yapar.
Nasıl kullanılır
- Dosyayı açın ve makroları etkinleştirin.
- İncelemek istediğiniz yöntemin sayfasını seçin.
- Gerekirse G:H sütunlarındaki başlangıç stoklarını ve B:E sütunlarındaki hareketleri kendi verinizle değiştirin.
- VBA sayfalarında makroyu çalıştırın; Power Query için Veri sekmesinden Tümünü Yenile'yi kullanın; formül yöntemlerinde sonuç otomatik hesaplanır.
- Kapanış sütunundaki değerleri yöntemler arasında karşılaştırın.