• Bir süredir maillerde yaşanan sorunlar giderilmiştir. Şifremi unuttum yaparak şifrelerinizi mailinizden alabilirsiniz.

  • Foruma hoş geldin 👋 Ziyaretçi

    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 tamamen ücretsizdir.

Soru VBA'da Toplaçarpım ve Özdeş formülleri

askan

Destek Ekibi
Kullanıcı Bilgileri
Aktiflik
Çevrimdışı
Katılım
7 Mar 2021
Mesajlar
1,862
Çözümler
451
Aldığı beğeni
2,356
Excel V
Office 365 TR
Konuyu Başlatan
Sizin yazdığınız formül sanırım karışık liste oluştuğu için yanlış puanlama yapıyor. Formüllü bir örnek yaptım. Değerler doğru dönüyor mu? kontrol ediniz. VBA ile çözüm için yardımcı olacak arkadaşlar açısından:
1-Liste 10 kişi ile sınırlı mı?
2-Liste Sıralama 1-2-3.. şeklinde düzenli mi gidiyor?
3-İkinciden 2 kişi varsa 1-2-2-4-... şeklinde mi gidiyor yoksa 1-2-2-3-4... şeklinde mi gidiyor?
 

Ekli dosyalar

  • Yarışma puanı vba.xlsx
    13.7 KB · Gösterim: 0
Herkese merhabalar. Örnek attığım dosyada sporculara yarışma puanı atayan bir excel formülü yazmıştım. her sonuçtan sadece bir kişi varsa en sağda puan listesindeki değeri yazıyor şayet birden fazla eşitlik varsa puan listesi sütununda denk gelen puanları toplayıp eşitlik sayısına bölüyor. Şimdi excelde yazdığım bu formülü vba ila yazmam gerekiyor fakat bir türlü işin içinden çıkamadım. Yardımcı olabilecek arkadaş varsa çok memnun olurum. Şimdiden teşekkürler.
 

Ekli dosyalar

  • Yarışma puanı vba.xlsx
    12.9 KB · Gösterim: 21
Merhaba,
Formülleri makroya çevirmek değil de, Yapılmasını istediğiniz işlemi ayrıntılı bir şekilde yazarsanız yardımcı olmaya çalışalım.
 
Merhabalar. Yarışma sonuçlarına göre yarışma puanlarını hesaplayan bir koda ihtiyacım var. Şöyle ki he sonuç için sabit puanlar var. 1. 100 2. 85 3. 65 4.55 5. 51 şeklinde sıfıra kadar gidiyor ve bu puan değerleri benzersiz ya da ardışık değil. Yarışmaya katılan 40 sporcu için puanlar bu şekilde azalarak devam ediyor fakat 41den itibaren kaç sporcu varsa puanları sıfır oluyor. Bu birinci aşama ikinci aşama eşitlik olması durumu. Bu durumu örnekle açıklamak istiyorum. mesela 2 tane birinci oldu yarışma sonuçlarına göre bu iki sporcunun yarışma puanının (100+85)/2 olarak hesaplanmasını istiyorum. Tabi 5 tane 35inci de olabilir. Kodun bu şekilde esnek olması lazım. Eklediğim dosyadaki excel formülü ile bu sistemi kurmayı becerebilmiştim. Yardımcı olursanız sevinirim. Teşekkürler
 
Merhaba

ChatGPT tarafından dönüştürme aşağıdaki şekilde oluşturulmuştur. Test edersiniz.

---------------------------------------


Aşağıdaki VBA kodu, verdiğiniz dizi formülünün eşdeğeridir:

Kod:
Değerli Misafirimiz İçeriği Görebilmek İçin Üyemiz İseniz Giriş Yap'ın Ya da Üye Ol'un.

Bu kod, bir aralıkta belirli bir kriteri karşılayan hücrelerin sayısını ve bunların toplamını hesaplar. Eğer bu hücrelerin sayısı 1 ise, o hücrenin değerini döndürür. Eğer sayısı 1'den fazlaysa, hücrelerin çarpımını toplar ve hücre sayısına böler. Eğer kriteri karşılayan hücre yoksa, boş bir değer döndürür.

Bu kodu kullanarak, verdiğiniz örnek formülü şu şekilde çevirebilirsiniz:

Kod:
Değerli Misafirimiz İçeriği Görebilmek İçin Üyemiz İseniz Giriş Yap'ın Ya da Üye Ol'un.

Bu formülü Excel hücresine yazdığınızda, doğru sonucu döndürmelidir. Lütfen unutmayın, formülün çalışması için öncelikle yukarıdaki VBA kodunu Excel dosyanıza eklemeniz gerekmektedir.
 
Geri
Üst