Merhaba,
Elimde 1125x122'lik, 0 ve 1'lerden oluşan bir matris var, bunu transpozuyla çarpmam gerekiyor (122x122'lik bir matris elde edeceğim). Ancak boyuttan dolayı MMULT fonksiyonu çalışmıyor.
Bana temel olarak gereken bu 122 sütunun 2'li kombinasyonlarını alması ve bu 2 sütunda da 1 değeri bulunduran satırları sayması. SUMPRODUCT kullandığımda, örneğin 1. sütunla 2. sütunu çarpıp toplarsam istediğime ulaşıyorum.
örn: =SUMPRODUCT(A1:A1125;B1:B1125)
Satırları sabitleyip sağa doğru çektiğimde 1x2, 1x3, ..., 1x122'yi de elde edebiliyorum, burada da sorun yok. Ancak 2x1, 2x2, 2x3 vs. için referansları kendim güncellemem gerekiyor. Bunun için de SUMPRODUCT içinde OFFSET kullanayım dedim, orada da çözemediğim bir sorunla karşılaştım.
=SUMPRODUCT(OFFSET(A1;0;0;1125,1);OFFSET(A1;0;0;1125;1))
yazdığımda ilk sütunu kendisiyle çarpıp sonucu veriyor. Ancak bu iki OFFSET'teki sütun değerini de COLUMN() ve ROW() fonksiyonlarıyla çekmeye çalıştığımda aynı fonksiyon - atıyorum 122 yerine - 0 değeri döndürmeye başlıyor.
=SUMPRODUCT(OFFSET(A1;0;COLUMN()-1;1125,1);OFFSET(A1;0;ROW()-1;1125;1))
Bu fonksiyon çalışsa sürükleyerek tüm hücreleri doldurabileceğim ama olmuyor.
VBA'i son çare olarak düşünüyorum, matris sürekli güncellenebildiğinden ve buna bağlı çok sayıda hücre olduğundan başka bir yazılıma aktarıp çarpıp geri taşımak da çok uğraştırıcı olacak benim için. O yüzden fonksiyonlarla halledebilirsem daha iyi olacak.
Uğraşan, kafa yoran herkese şimdiden teşekkürler.
Elimde 1125x122'lik, 0 ve 1'lerden oluşan bir matris var, bunu transpozuyla çarpmam gerekiyor (122x122'lik bir matris elde edeceğim). Ancak boyuttan dolayı MMULT fonksiyonu çalışmıyor.
Bana temel olarak gereken bu 122 sütunun 2'li kombinasyonlarını alması ve bu 2 sütunda da 1 değeri bulunduran satırları sayması. SUMPRODUCT kullandığımda, örneğin 1. sütunla 2. sütunu çarpıp toplarsam istediğime ulaşıyorum.
örn: =SUMPRODUCT(A1:A1125;B1:B1125)
Satırları sabitleyip sağa doğru çektiğimde 1x2, 1x3, ..., 1x122'yi de elde edebiliyorum, burada da sorun yok. Ancak 2x1, 2x2, 2x3 vs. için referansları kendim güncellemem gerekiyor. Bunun için de SUMPRODUCT içinde OFFSET kullanayım dedim, orada da çözemediğim bir sorunla karşılaştım.
=SUMPRODUCT(OFFSET(A1;0;0;1125,1);OFFSET(A1;0;0;1125;1))
yazdığımda ilk sütunu kendisiyle çarpıp sonucu veriyor. Ancak bu iki OFFSET'teki sütun değerini de COLUMN() ve ROW() fonksiyonlarıyla çekmeye çalıştığımda aynı fonksiyon - atıyorum 122 yerine - 0 değeri döndürmeye başlıyor.
=SUMPRODUCT(OFFSET(A1;0;COLUMN()-1;1125,1);OFFSET(A1;0;ROW()-1;1125;1))
Bu fonksiyon çalışsa sürükleyerek tüm hücreleri doldurabileceğim ama olmuyor.
VBA'i son çare olarak düşünüyorum, matris sürekli güncellenebildiğinden ve buna bağlı çok sayıda hücre olduğundan başka bir yazılıma aktarıp çarpıp geri taşımak da çok uğraştırıcı olacak benim için. O yüzden fonksiyonlarla halledebilirsem daha iyi olacak.
Uğraşan, kafa yoran herkese şimdiden teşekkürler.
