Bu dosya, bir kritere uyan satırların değerlerini alt alta değil, aynı hücrenin içinde virgülle ayrılmış şekilde listelemeyi gösterir. Örnekte cinsiyet sütunu "k" olan kayıtların satır numaraları tek hücrede birleştirilir.
M2 hücresinde makro gerektirmeyen yöntem kullanılır. FILTER kritere uyan satır numaralarını süzer, TEXTJOIN bunları virgülle birleştirir. Bu formül, FILTER fonksiyonunu destekleyen Excel sürümlerinde çalışır:
Dosyanın içeriği
- Sheet1: A sütununda "Satır No", C sütununda "Cinsiyet" bilgisi yer alır. Cinsiyet değerleri "e" ve "k" olarak girilmiştir. F sütununda "Kızlar" başlığı altında örnek bir sonuç (2,3,6,9,10), I ve M sütunlarında ise aynı sonucu üreten iki farklı formül bulunur.
Kullanılan formüller
I2 hücresinde, makro ile tanımlanan ACONCAT fonksiyonu kullanılır. IF ile cinsiyeti "k" olan satırların numaraları ", " ayracıyla birleştirilir, REPLACE ise baştaki fazla ayracı siler. Formül dizi olarak çalışır:=METİNBİRLEŞTİR(", ";DOĞRU;FİLTRE(A2:A11;C2:C11="k"))
Makrolar
Dosya makro içerir, açarken makroları etkinleştirmeniz gerekir. Module1 içinde aconcat adlı bir fonksiyon bulunur. Fonksiyon, verilen aralığın ya da dizinin her elemanını sırayla okuyup aralarına belirtilen ayracı koyarak tek metinde birleştirir, sondaki fazla ayracı keser. Hücre formülü içinden çağrılır, ayrıca çalıştırılması gerekmez. Kodda dosya silme veya dış bağlantı gibi işlem yoktur.Nasıl kullanılır
- Dosyayı açın ve makroları etkinleştirin.
- A ve C sütunlarına kendi verilerinizi girin.
- I2 formülünde aralıkları ($A$2:$A$13, $C$2:$C$13) verinize göre düzenleyin; kriter olarak "k" yerine istediğiniz değeri yazın.
- Makro kullanmak istemiyorsanız M2 hücresindeki TEXTJOIN ve FILTER formülünü kullanın.
- Makrolu yöntemi başka dosyada kullanmak için Module1 içeriğini o dosyaya kopyalayın ve dosyayı .xlsm olarak kaydedin.