• 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.

Çözüldü Farklı Satırdaki Metinleri Belirli Sayı Kadar Alt Alta Çoğaltma

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

teyadih

Yeni Üye
Katılım
13 Ağu 2021
Mesajlar
641
Çözümler
3
Aldığı beğeni
128
Excel V
Office 2016 EN
Konu Sahibi
Merhaba arkadaşlar. Ekli dosyada D Sütununa B1 deki metni B2 deki sayı kadar çoğaltarak yanına sıra numarası da eklemek suretiyle aşağıya kadar yazdırıyorum. Söz konusu formülü C sütunundaki örnekteki gibi B-P arasında bulunan işaretli alandaki tüm satırları kapsayacak şekilde güncelleyebilir miyiz? Uğraştım ama olmadı maalesef.
 
Çözüm
Selamlar,
Eğer sorunuz, neden KAÇINCI(SATIRSAY($P$4:S4) ifadesinde KAÇINCI(SATIRSAY($P$4:P4) gibi AYNI sütun harflerini kullanmıyoruz şeklinde ise,
1 - diğer kolondan kopyalama ile aldığımdan dolayı...
2 - Esas olan ise işlev olarak FARKI Yoktur.... Çünkü satırları saydırıyoruz... Bu durumda da Kolon harflerinden sonraki 4 rakamının önemi vardır.
Yani KAÇINCI(SATIRSAY($P$4:S4) ilk satırda 1 değerini verir. Bir alt satıra indiğimizde ise KAÇINCI(SATIRSAY($P$4:S5) şeklinde olacak ve 2 değerini verecektir.

Yok eğer, KAÇINCI(SATIRSAY($P$4:S4) burada ne işlev görüyor diyorsanız eğer,
Dizi formülleri anlatmak oldukça zordur. Deneyeceğim....
(Ama, sizin...
bence makrosuz olması imkansız gibi.
formülle çok zor .
 
Selamlar,
Formülle çözüm için ekteki dosyayı inceleyiniz...

1. çözüm : Excel 365 için formülle dökülmeli listeleme...
HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.

2. çözüm : Excel 2007 ve sonrası için (2 kolon kullanılarak çözüm)
isimlerin listelenmesi (DİZİ Formül)
D kolonu
HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.
ve
isimlere numara olarak sonek eklenmesi
E kolonu
HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.

3. çözüm : Excel 2007 ve sonrası için (2 kolon kullanılarak çözüm)
isimlerin listelenmesi (DİZİ Formül)
G Kolonu
HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.
ve
isimlere numara olarak sonek eklenmesi
H kolonu
HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.

2. ve 3. çözümlerin, TEK formülle elde edilmesi için, DİZİ formül parçasının formülde iki defa daha kullanılması gerekiyor.
O nedenle, isimlere numara olarak sonek eklenmesi olayı için 2. bir kolon kullanıldı....

TEK Formül olayı için ise,
Örnek olarak 3. çözüme TEK Formül uygulaması J kolonunda yapıldı.
DİZİ Formül olarak
HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.

Dosya ektedir.. İncelersiniz...
 
Konu Sahibi
Teşekkür ederim 52779 elinize sağlık. Yardımcı alan kullanmaksızın yazdığınız aşağıdaki formüldeki kırmızı renkli olan
Bu bağlantı ziyaretçiler için gizlenmiştir. Görmek için lütfen giriş yapın veya üye olun.
(
Bu bağlantı ziyaretçiler için gizlenmiştir. Görmek için lütfen giriş yapın veya üye olun.
($P$4:S4
alanı çözemedim. Formülün bulunduğu ilk satırda ama metinlerle ve bulunduğu sütun ile ilgili değil.

HTML:
CSS:
İçeriği görebilmek için Giriş yap ya da Üye ol.
 
Selamlar,
Eğer sorunuz, neden KAÇINCI(SATIRSAY($P$4:S4) ifadesinde KAÇINCI(SATIRSAY($P$4:P4) gibi AYNI sütun harflerini kullanmıyoruz şeklinde ise,
1 - diğer kolondan kopyalama ile aldığımdan dolayı...
2 - Esas olan ise işlev olarak FARKI Yoktur.... Çünkü satırları saydırıyoruz... Bu durumda da Kolon harflerinden sonraki 4 rakamının önemi vardır.
Yani KAÇINCI(SATIRSAY($P$4:S4) ilk satırda 1 değerini verir. Bir alt satıra indiğimizde ise KAÇINCI(SATIRSAY($P$4:S5) şeklinde olacak ve 2 değerini verecektir.

Yok eğer, KAÇINCI(SATIRSAY($P$4:S4) burada ne işlev görüyor diyorsanız eğer,
Dizi formülleri anlatmak oldukça zordur. Deneyeceğim....
(Ama, sizin kendinizin yapmanız daha kolay aslında.... Formül çubuğundayken, ilgili formül parçacığını seçin ve F9 tuşuna basın... Formül çubuğunda seçtiğiniz formül parçacığının ürettiği değerler dizisini görebilirsiniz.)

Burada;

HTML:
CSS:
İçeriği görebilmek için Giriş yap ya da Üye ol.

formül parçası bir bütündür.
Önemli olan kısmı (formül parçası)

HTML:
CSS:
İçeriği görebilmek için Giriş yap ya da Üye ol.
amacı : B2 : P2 aralığında yazan adetlerin Kümülatif Toplamlarını hesaplamak...
Yani, sizin değerlerinize göre kümülatif toplamları bir yardımcı satırda aldırdığımızı kabul ettiğimizi düşünürsek (Bak resim)
Resimdeki sarı satır olarak kümülatif toplamlar alınmıştır.

1638186416602.png

formül parçasının ürettiği değerler bakarsak
{0\20\35\36\38\38\38\38\38\38\38\44\44\44\44} şeklindedir....

ikkat ederseniz son değer olan 55 i almadı. O nedenle, KAÇINCI(aranan değer ; aranan aralık ; arama_şekli) biçimindeki KAÇINCI işlevinde arama şekli önem kazanmakta.... Arama şekli Varsayılan olarak 1 (DOĞRU) dir ve bu da Yaklaşık eşleşmedir "Tam Eşleşme" için 0 (YANLIŞ) yazılır..
Biz Kaçıncı işlevinde, arama şekli için değer yazmadık... Dolayısıyla varsayılanı kullanıp Yaklaşık eşleşme yapıyoruz.... Bunun anlamı da şudur.

{0\20\35\36\38\38\38\38\38\38\38\44\44\44\44}

dizisinde, varsayalım, 10 değerini aratıyoruz. Aranılan dizide 1. değerimiz : 0 ve 2. değerimiz : 20..... Aradığımız değer ise 10 olduğundan bu aralıktadır. Bu durumda bir önceki değeri sonuç olarak alır... Yani 0 değerini sonuç olarak alır ve Kaçıncı ile 0 değeri 1. sırada olduğundan 1 değerini üretir.
Eğer 20 değerini arattırıyor olsaydık, dizide 20 değeri vardır ve 2. sıradadır... Kaçıncı işlevi ile üretilen sonuç : 2 olacaktır.

{0\20\35\36\38\38\38\38\38\38\38\44\44\44\44} dizisinde 40 değerini arattıralım... 40 değeri 38 ile 44 arasındadır... O halde 38 değerinin dizide kaçıncı olduğu bizim aradığımız değerdir. Ancak, dizide 38 değerinden 7 adet var... Bunlardan hangisi ? sorusuna cevap ise, dizideki ilk 38 değerinin kaçıncı olduğudur... Ki bu da bize 5 değerini verecektir.... Diğer 38 ler ne anlam taşıyor derseniz... Onlar tablonuzdaki BOŞ hücreler...

Bir incelik :
Toplamda 55 adet var... 55 e kadar, hep 44 değeri olan kaçıncı işlevi 12 değerini üretir... Toplamda 55 ama, Üretilen değerler içerisinde 55 yok.
Şu halde aramayı 1 den değil 0 dan başlatacağız demektir....

O zaman da, sorunuzdaki kısım önem kazanıyor....

KAÇINCI(SATIRSAY($P$4:S4)-1
ilk satırdaki, KAÇINCI(SATIRSAY($P$4:S4) bize 1 değerini verecektir.... 1 - 1 = 0..... ilk satır için değerimiz 0 olmakta....

O zaman, ilk satır için

HTML:
CSS:
İçeriği görebilmek için Giriş yap ya da Üye ol.

formül parçasını irdelersek

1 - İNDİS({0\20\35\36\38\38\38\38\38\38\38\44\44\44\44};KAÇINCI(SATIRSAY($P$4:S4)-1;{0\20\35\36\38\38\38\38\38\38\38\44\44\44\44}))
şeklini alacak... Buradan
KAÇINCI(SATIRSAY($P$4:S4)-1;{0\20\35\36\38\38\38\38\38\38\38\44\44\44\44})
KAÇINCI(0;{0\20\35\36\38\38\38\38\38\38\38\44\44\44\44})
ve işlem sonucumuz = 1 olacak...

yerine koyarsak,
1 - İNDİS({0\20\35\36\38\38\38\38\38\38\38\44\44\44\44};1)
ve İNDİS ile aradığımız ise {0\20\35\36\38\38\38\38\38\38\38\44\44\44\44} dizisinin 1. değeri yani sonuç = 0
ve sonuç
1 - 0 = 1 olmakta.... Yani Z.Katibi&1 = ZKatibi1 olmakta.....

Aşağıya doğru formülü kopyaladığınızda aranılacak değer SATIRSAY($P$4:S4)-1 ile belirlenmekte.....

bir örnek daha;
21. nci satırı arayalım... Burada Z.Katibi (4/B) başlamakta...

HTML:
CSS:
İçeriği görebilmek için Giriş yap ya da Üye ol.

21- İNDİS({0\20\35\36\38\38\38\38\38\38\38\44\44\44\44};KAÇINCI(SATIRSAY($P$4:S24)-1;{0\20\35\36\38\38\38\38\38\38\38\44\44\44\44}))

21 - İNDİS({0\20\35\36\38\38\38\38\38\38\38\44\44\44\44};KAÇINCI(21-1;{0\20\35\36\38\38\38\38\38\38\38\44\44\44\44}))

21 - İNDİS({0\20\35\36\38\38\38\38\38\38\38\44\44\44\44};KAÇINCI(20;{0\20\35\36\38\38\38\38\38\38\38\44\44\44\44}))
21 - İNDİS({0\20\35\36\38\38\38\38\38\38\38\44\44\44\44};2)

21 - 20 = 1 = Z.Katibi (4/B)1

Eğer 20. satırı arıyor olsaydık

20 - İNDİS({0\20\35\36\38\38\38\38\38\38\38\44\44\44\44};KAÇINCI(20-1;{0\20\35\36\38\38\38\38\38\38\38\44\44\44\44}))
20 - İNDİS({0\20\35\36\38\38\38\38\38\38\38\44\44\44\44};KAÇINCI(19;{0\20\35\36\38\38\38\38\38\38\38\44\44\44\44}))
20 - İNDİS({0\20\35\36\38\38\38\38\38\38\38\44\44\44\44};1))
20 - 0 = 20 = Z.Katibi 20
 
Çözüm
Durum
Konu Çözümlendiği İçin Kapatılmıştır.
Geri
Üst