Çözüldü birleştirilmiş aylarda mod fonksiyonu kullanımı

kmlzdmr

Site Üyesi
Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe
Merhaba,
B4:CS6 hücre aralığına uygulayacağım Topla.Çarpım fonkisyonun içinde kullanılmak üzere MOD fonksiyonu kullanarak birleştirilmiş hücrelerde buluna ay adlarının ilk hücrelerini sabit olarak getirecek formüle ihtiyaç var.

Mod fonksiyonu ile 2. satırda birleştirilmiş olan ay adlarına göre 8 sütun halinde (B2:CS2 aralığında aylar) 3. satırda bulunan malzemeler var.
B4:CS6 hücre aralığına uygulayacağım Topla.Çarpım fonkisyonu içinde MOD fonksiyonu sonucunda ay atlayınca 2. satırdaki ay isminin kayıtlı olduğu hücre adresini 8 sütun boyunca kullanacak MOD formülü gerekli.
Nasıl formüle edebilirim.


=TOPLA.ÇARPIM((veri!$A$2:$A$40='mod çalışması'!Z$3)*('mod çalışması'!$A6=veri!$C$2:$C$40)*(veri!$B$2:$B$40='mod çalışması'!$Z$2:$AG$2)*(veri!$D$2:$D$40))
 

Ekli dosyalar

Çözüm
Selamlar,
B4 hücresine

Kod:
You must log in to view content
(1 satır)

formülünü yazıp sağa ve aşağıya kopyalayın...

Buradaki,
AY("1."&ARA(2;1/($B$2:B$2<>"");$B$2:B$2)) yerine

daima 8 kolon olacaksa

BÖLÜM(SÜTUNSAY($B$2:B$2)-1;8)+1 formülü de yazılabilir.

Ya da

TAMSAYI((SÜTUNSAY($B$2:B$2)-1)/8)+1 formülü yazılabilir..

Yani formülün tamamı

Kod:
You must log in to view content
(1 satır)

Bu formüllerle ilgili kurallar...
1 - YIL kriteri değerlendirmeye alınmadı... Verilerin tamamı AYNI yıl olarak varsayıldı.
2 - Toplamı...
Selamlar,
B4 hücresine

Kod:
You must log in to view content
(1 satır)

formülünü yazıp sağa ve aşağıya kopyalayın...

Buradaki,
AY("1."&ARA(2;1/($B$2:B$2<>"");$B$2:B$2)) yerine

daima 8 kolon olacaksa

BÖLÜM(SÜTUNSAY($B$2:B$2)-1;8)+1 formülü de yazılabilir.

Ya da

TAMSAYI((SÜTUNSAY($B$2:B$2)-1)/8)+1 formülü yazılabilir..

Yani formülün tamamı

Kod:
You must log in to view content
(1 satır)

Bu formüllerle ilgili kurallar...
1 - YIL kriteri değerlendirmeye alınmadı... Verilerin tamamı AYNI yıl olarak varsayıldı.
2 - Toplamı alınacak olan kolon - aralık veri!$D$2:$D$40 tamamı Sayılardan oluşmalı. BOŞ hücre, ""(BOŞ), ya da sayı görünümlü Metin ya da metin olmamalı. Aksi halde formül HATA verecektir. Böyle bir durumda, son çarpan olan veri!$D$2:$D$40 ibaresinin biraz değiştirilmesi gerekir.
yani EĞERHATA(--(veri!$D$2:$D$40);0) şeklinde yazılmalıdır.
 
Çözüm
Selamlar,
B4 hücresine

Kod:
You must log in to view content
(1 satır)
=

formülünü yazıp sağa ve aşağıya kopyalayın...

Buradaki,
AY("1."&ARA(2;1/($B$2:B$2<>"");$B$2:B$2)) yerine

daima 8 kolon olacaksa

BÖLÜM(SÜTUNSAY($B$2:B$2)-1;8)+1 formülü de yazılabilir.

Ya da

TAMSAYI((SÜTUNSAY($B$2:B$2)-1)/8)+1 formülü yazılabilir..

Yani formülün tamamı

Kod:
You must log in to view content
(1 satır)

Bu formüllerle ilgili kurallar...
1 - YIL kriteri değerlendirmeye alınmadı... Verilerin tamamı AYNI yıl olarak varsayıldı.
2 - Toplamı alınacak olan kolon - aralık veri!$D$2:$D$40 tamamı Sayılardan oluşmalı. BOŞ hücre, ""(BOŞ), ya da sayı görünümlü Metin ya da metin olmamalı. Aksi halde formül HATA verecektir. Böyle bir durumda, son çarpan olan veri!$D$2:$D$40 ibaresinin biraz değiştirilmesi gerekir.
yani EĞERHATA(--(veri!$D$2:$D$40);0) şeklinde yazılmalıdır.
Sayın #52779 teşekkür ederim.
ayların 8 adet bölümleri için verdiğiniz üç tipteki formüller 1...,2..., 3... 12... şeklinde sekizerli olarak gidiyor. Çalışıyor.
Ancak, yukarıdaki Topla.Çarpım formülü ve daima 8 kolon olacaksa değişiklik formülleri dahil dosyada çalışmadı. değer hatası verdi.
Mümkünse 4,5,6. satırlara 3 tipte Topla.Çarpım formülü uygulanmış olarak dosya ekleyebilir misiniz.
Diğer yandan, eklentinizdeki Bölüm, Tamsayı ile başlayan fonksiyon işlevini yapmaya çalıştığım MOD fonksiyonu ile
EĞER(MOD(SÜTUN()-1;8)=0;B$2;C$2 yapabilmek mümkün mü?
 
@kmlzdmr
veri sayfasında tarih sütununda 16 ve 37'nci satırlardaki tarihleri düzeltin,
ardından da şu formülü diğer sayfa B4 hücresine uygulayıp sağa ve ayağı kopyalayın.

Kod:
You must log in to view content
(1 satır)
 
@kmlzdmr
veri sayfasında tarih sütununda 16 ve 37'nci satırlardaki tarihleri düzeltin,
ardından da şu formülü diğer sayfa B4 hücresine uygulayıp sağa ve ayağı kopyalayın.

Kod:
You must log in to view content
(1 satır)
Ömer Baran üstadım
formül içindeki TAMSAYI((SÜTUN()-2)/8)+1 fonksiyon 8 sütun birleştirilmiş olan ay alanının 1...,2... işlemini yaparken
bunu MOD fonksiyonu ile yapabilir olarak yardımcı olabilir misiniz? Zira dün 2 saat uğraştım yapamadım.
 
Belgenizdeki işleme uygun olanı TAMSAYI(xxxx/yyyy) işlemi.
Zira elde edilmesi gereken sonuç AY ADI değil, AY NO.

Özetle; B4 'ten sağa doğru size lazım olan şey AY ADLARI değil, diğer sayfadan özet bilgi çekmek istiyorsunuz.
Başka bir alanda 8'er kez sadece ay adlarını elde etmek istiyorsanız =EĞER(MOD(SÜTUN()-2;8)=0;B$2;A4) formülü işinizi görür.

AY ADI, mevcut verilere göre TOPLA.ÇARPIM işlevi içinde bir işinize yaramaz. Zira diğer sayfadaki veriler tarih, ay adı değil.
Diğer sayfada tarihler yerine formül sayfasındaki gibi AY ADLARI olsaydı, MOD olanın kullanılması gerekecekti.

MOD işlevini kullandığınızda, 0, 1, 2, 3, ... gibi ardışık sayılar elde edersiniz.
Oysa sizin 8 sütun boyunca aynı sayıyı elde etmeniz gerekiyor (ilk 8 sütunda 1, sonraki 8 sütunda 2,.... gibi)
 
AY ADI, mevcut verilere göre TOPLA.ÇARPIM işlevi içinde bir işinize yaramaz. Zira diğer sayfadaki veriler tarih, ay adı değil.
Böyle demeyelim derim...
Zira,
Çözümde ilk verdiğim formül
Kod:
You must log in to view content
(1 satır)

şeklinde olup, birleştirilmiş hücrelerde, Ay adlarını bulmakta. Buradan Ay numarasını bulmakta... Kriter olarak ta ay numarası kullanılmakta...

Avantajları :
1 - Örneğin bazı işyerlerinde Ağustos ayı komple izin ayıdır. Ve de Aylar da sadece çalışılan aylar olarak yazılır genelde. Ağustos ayı atlanır. En azından bizde böyle. Ay numarası dediğinizde TAMSAYI / BÖLÜM / MOD işlevleri kullandığınızda problem?? Bazen de aylar sıralı gitmeyebilir.
2 - Aralara kolon ilave edilirse / çıkarılırsa TAMSAYI / BÖLÜM / MOD ??... Ama üstteki formül birleştirilmiş hücreler bozulmadığı sürece çalışacaktır.

Bu da benim düşüncem...
Ayrıca, SÜTUN() ibaresini de hataya çok elverişli olarak görüyorum. Ondan ziyade ben SÜTUNSAY kullanıyorum.
 
Böyle demeyelim derim...
Zira,
Çözümde ilk verdiğim formül
Kod:
You must log in to view content
(1 satır)

şeklinde olup, birleştirilmiş hücrelerde, Ay adlarını bulmakta. Buradan Ay numarasını bulmakta... Kriter olarak ta ay numarası kullanılmakta...

Avantajları :
1 - Örneğin bazı işyerlerinde Ağustos ayı komple izin ayıdır. Ve de Aylar da sadece çalışılan aylar olarak yazılır genelde. Ağustos ayı atlanır. En azından bizde böyle. Ay numarası dediğinizde TAMSAYI / BÖLÜM / MOD işlevleri kullandığınızda problem?? Bazen de aylar sıralı gitmeyebilir.
2 - Aralara kolon ilave edilirse / çıkarılırsa TAMSAYI / BÖLÜM / MOD ??... Ama üstteki formül birleştirilmiş hücreler bozulmadığı sürece çalışacaktır.

Bu da benim düşüncem...
Ayrıca, SÜTUN() ibaresini de hataya çok elverişli olarak görüyorum. Ondan ziyade ben SÜTUNSAY kullanıyorum.
Sayın 52779,
5. pencerede yazdığım şu yazıya istinaden "Ömer Baran üstadım formül içindeki TAMSAYI((SÜTUN()-2)/8)+1 fonksiyon 8 sütun birleştirilmiş olan ay alanının 1...,2... işlemini yaparken bunu MOD fonksiyonu ile yapabilir olarak yardımcı olabilir misiniz? Zira dün 2 saat uğraştım yapamadım."

6. pencerede ÖB üstadın bana cevabı olarak MOD fonksiyonunun eklediğim örneğe uygun olmayacağını vurguladığını değerlendirmiştim.

Sizin yukarıdaki formül çalışıyor. İkisi de aynı sonuca varıyor.
MOD ile ay adı getirtilerken
aşağıdaki formüllerle ay sayısı getirttirildiği iki tarafça belirtilmektedir.
-ÖB - (TAMSAYI((SÜTUN()-2)/8)+1=AY(veri!$B$2:$B$40))*(veri!$A$2:$A$40=B$3)
-52779- (AY("1."&ARA(2;1/($B$2:B$2<>"");$B$2:B$2))=AY(veri!$B$2:$B$40))

İkinize de yardımlarınız için teşekkür ederim.
not(Bu fonksiyonlar için pazar günü sabah 8,30 da bilgisayar başına oturdum. halen devam...)
 
@kmlzdmr 'in kafasını karıştırmamak bakımından öyle yazmıştım.

Elbette ay adından hareket edilebilir ama, burada da ilgili formülde doğrudan ay adını değil,
ay adından hareketle bir tarih bulup, bu tarih bilgisinden de yine ay numarasını tespit etmek durumunda kalınıyor.
Örneğe göre; AY("1."&ARA.....) formül parçasında AY adından hareketle bir TARİH elde ediliyor ve bu tarihten de ay numarası bulunuyor.

Doğrudan hedefe yürümek için ay adını hiç kullanmadan 8 sütunluk ritimden yararlanarak TAMSAYI(..../8)+1 ile
ilgili sütunda kullanılması icap eden ay numarasına ulaşılmasını önermiştim.

AY adını kullanmak bana, biraz etrafından dolaşmak gibi geliyor açıkçası.
Benim AY ADI "işinize yaramaz"dan kastım
=TOPLA.ÇARPIM((tarih alanı=AY ADI)*....) şeklinde kullanılamayacağını belirtmek idi.

SÜTUN() yerine SÜTUNSAY() tercihinde haklısınız, hata payının azaltılması için o şekilde daha doğru olacağı ortada.
 
Konuyu başlatan
Site Üyesi
Katılım
Konum
ANKARA
Konu Bilgi
Durum
Çözüldü 
Forum
Excel Formül Soruları
Başlangıç tarihi
Son yanıt tarihi
Cevaplar
8
Üst