Farklı Metinleri Belirli Sayı Kadar Çoğaltma

  • Konuyu başlatan Konuyu başlatan teyadih
  • Başlangıç tarihi Başlangıç tarihi

Kısa Açıklama

Farklı Metinleri Belirli Sayı Kadar Çoğaltma isimli başlıkta, ilgili işlemlere dair detaylar yer almaktadır.
Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe
Ekli dosyalar
Ben bu kadar yapabildim.
İsimleri istenilen sayı kadar tekrarlattım ama sıra numarasını veremedim.

Bazı formüllerde 2010 versiyonda çalışmayabilir, tek tek hangi versiyonda yayınlandıklarını incelemedim açıkçası.
Yol alıp devam ettiren arkadaşımız çıkacaktır diye düşünüyorum.
Sonucu ben de merak ediyorum, keza sayı bazlı çalışan oluşturmak adına bence güzel bir örnek.
 
Ekli dosyalar
Merhaba @teyadih .

Ekteki belgede yer alan uygulamayı bir deneyin bakalım.
Üstte sağa doğru olan kısmın boşluksuz olmasına dikkat, ayrıca 3'üncü satır eklenmiş durumda.
Belgedeki uygulama formül çözümüdür.

.
 
Ekli dosyalar
Moderatörün son düzenlenenleri:
Selamlar,
Alternatif çözüm olarak,
Office 365
@Admin formülüne biraz eklemeler yaparak
Kod:
Görüntülemek için giriş yapmanız gerekmektedir.
(1 satır)
ile dökülmeli olarak değerler elde ediliyor...

Alternatif.1
ilk kolonda
DİZİ Formülüyle
Kod:
Görüntülemek için giriş yapmanız gerekmektedir.
(1 satır)
B1 : P1 deki değerler, B2 : P2 deki adetler kadar (aralarda Boşluklar da var) satırlara yazdırılıyor. Ve
ikinci kolonda da
ilk kolondaki elde edilen değerlere
Kod:
Görüntülemek için giriş yapmanız gerekmektedir.
(1 satır)
formülü ile Adetleri SonEk olarak ekleniyor.

Alternatif.2 (Alternatif.1 gibi ilk ve 2. kolon olarak yapıldı)
ilk kolonda
DİZİ formül ile
Kod:
Görüntülemek için giriş yapmanız gerekmektedir.
(1 satır)
B1 : P1 deki değerler, B2 : P2 deki adetler kadar (aralarda Boşluklar da var) satırlara yazdırılıyor. Ve
ikinci kolonda da
ilk kolondaki elde edilen değerlere
Kod:
Görüntülemek için giriş yapmanız gerekmektedir.
(1 satır)
formülü ile Adetleri SonEk olarak ekleniyor.

Dosya ektedir.... İncelersiniz....

Sonradan ekleme : 26.11.2021 23:45
1 - Dosyada B1 : P2 aralığındaki veriler, başka sayfadan bağlantılı gelip, bağlantıların güncellenmesi soruluyordu. B1 : P2 aralığındaki değerler Manuel yazıldı...Bağlantılar kaldırıldı.
2 - Alternatif Çözümlerde 2 kolon ile çözüm verilmişti. TEK formül yazılabilir ancak, DİZİ formül parçasının formülde 2 defa daha kullanılması gerekmekte. O nedenle de isimlere numara olarak sonek eklenmesi ikinci bir kolon kullanılarak daha kolay bir şekilde yapıldı.
TEK Formüle Örnek olması açısından J kolonunda, Alternatif2 çözümüne TEK Formül uygulaması yapıldı....

Bu nedenlerle bir önceki dosya kaldırılarak yeni dosya eklendi....
 
Ekli dosyalar
Moderatörün son düzenlenenleri:
Merhaba 52779 nasılsınız?. Yardımcı alan kullanmaksızın yazdığınız aşağıdaki formüldeki kırmızı renkli olan KAÇINCI(SATIRSAY($P$4:S4 alanı çözemedim. Formülün bulunduğu ilk satırda ama metinlerle ve bulunduğu sütun ile ilgili değil.

=EĞERHATA(İNDİS($B$1:$P$1;KAÇINCI(SATIRSAY(J$3:J3)-1;DÇARP(--(DEVRİK_DÖNÜŞÜM(SÜTUN($B$2:$P$2))>SÜTUN($B$2:$P$2));DEVRİK_DÖNÜŞÜM(EĞER($B$2:$P$2<>"";$B$2:$P$2;0)))))&SATIRSAY(J$3:J3)-İNDİS(DÇARP(--(DEVRİK_DÖNÜŞÜM(SÜTUN($B$2:$P$2))>SÜTUN($B$2:$P$2));DEVRİK_DÖNÜŞÜM(EĞER($B$2:$P$2<>"";$B$2:$P$2;0)));KAÇINCI(SATIRSAY($P$4:S4)-1;DÇARP(--(DEVRİK_DÖNÜŞÜM(SÜTUN($B$2:$P$2))>SÜTUN($B$2:$P$2));DEVRİK_DÖNÜŞÜM(EĞER($B$2:$P$2<>"";$B$2:$P$2;0)))));"")
 
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;

Kod:
Görüntülemek için giriş yapmanız gerekmektedir.
(1 satır)

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

Kod:
Görüntülemek için giriş yapmanız gerekmektedir.
(1 satır)

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.
1638266982052.webp


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

Dikkat ederseniz son değer olan 55 i almadı. Burada, 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

Kod:
Görüntülemek için giriş yapmanız gerekmektedir.
(1 satır)

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

Kod:
Görüntülemek için giriş yapmanız gerekmektedir.
(1 satır)

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
 
Moderatörün son düzenlenenleri:
Geri
Üst