İçindekiler:
Video: Excel'de Şarta Bağlı Olarak Değeri Saymak (Eğersay İşlevi Kullanımı) -175. video | Ömer BAĞCI 2024
atama ifadesi , bir ifadenin sonucunu bir değişkene veya bir nesneye atayan bir VBA deyimidir. Excel'in Yardım sistemi, terim ifadesini
"… olarak tanımlar. Bu, bir dize, sayı veya nesne veren anahtar kelimeler, işleçler, değişkenler ve sabitlerden oluşan bir birleşimdir. Bir ifade, bir hesaplama yapmak, karakterleri değiştirmek veya verileri test etmek için kullanılabilir. "
VBA'daki çalışmalarınızın çoğunda ifadelerin geliştirilmesi (ve hata ayıklama) vardır. Excel'de formülleri nasıl oluşturacağınızı biliyorsanız, ifade oluşturmakta sorun yaşayamazsınız. Excel, bir çalışma sayfası formülüyle bir hücrede sonucu görüntüler. Öte yandan, bir VBA ifadesi bir değişkene atanabilir.
Atama deyimi örnekleri
Aşağıdaki atama ifadesi örneklerinde, ifadeler eşit işaretin sağındadır:
x = 1 x = x + 1 x = (y * 2) / (z * 2) HouseCost = 375000 FileOpen = Gerçek Aralık ("TheYear"). Değer = 2016
İfadeler istediğiniz kadar karmaşık olabilir; uzun ifadeleri daha kolay okunur yapmak için satır devam karakterini (boşluk ile ardından bir alt çizgi) kullanın.
İfadeler genellikle işlevleri kullanır: VBA'nın yerleşik işlevleri, Excel çalışma sayfası işlevleri veya VBA ile geliştirdiğiniz işlevler.
Eşit işaret hakkında
Yukarıdaki örnekte de görebileceğiniz gibi, VBA atama operatörü olarak eşit işareti kullanır. Eşit işareti, eşitlik için matematiksel bir simge olarak kullanmaya alışıksınızdır. Bu nedenle, aşağıdakilere benzer bir atama ifadesi kaşlarınızı kaldırmanıza neden olabilir:
z = z + 1
Hangi zırhlı evrende z kendine eşittir 1? Cevap: Bilinen evren yok. Bu durumda, (atandığında) atama ifadesi z'nin değerini 1 arttırır. Dolayısıyla, z, 12 ise, deyimi yürütürken z'nin 13'e eşit olmasını sağlar. Sadece bir atamanın, eşit işareti bir operatör olarak kullandığı bir sembol değil de kullandığını unutmayın. eşitlik.
Düzgün operatörler
Operatörler VBA'da önemli roller oynar. Eşittir işaretli operatöre ek olarak, VBA çeşitli operatörler sağlar. Bunlar, çalışma sayfasındaki formüllerde kullanılanlarla aynı operatörler oldukları için (Mod operatörü hariç) sizin için iyi bilinmelidir.
İşlev | Operatör Sembolü |
---|---|
Toplama | + |
Çarpma | * |
Bölüm | / |
Çıkarma | - |
Üstelleştirme | ^ < Dize birleştirme |
& | Tamsayı bölme (sonuç her zaman bir tamsayıdır) |
Modulo aritmetiği (bölme | |
işleminin kalanını döndürür)
Mod |
Yazarken bir Excel formülü, MOD işlevini kullanarak modulo aritmetik yaparsınız.Örneğin, aşağıdaki formül, 2'yi (12'yi 5 bölündüğünde kalan) döndürür: |
= MOD (12, 5)
VBA'da Mod işleci böyle kullanılır (ve z'nin değeri 2'dir):
z = 12 Mod 5
birleştirme terimi, "birlikte katılmak" için konuşan programcıdır. "Böylece, dizeleri bir araya getirirseniz, dizeleri yeni ve geliştirilmiş bir dizge yapmak için birleştiriyorsunuz. VBA ayrıca mantıksal operatörlerin tam bir setini sağlar. Bunlardan, değil, Ve ve Veya en çok kullanılıyor.
Operatör
Neyi Yapıyor | Değil |
---|---|
Bir ifadede mantıksal bir olumsuzlama gerçekleştirir | Ve |
İki ifadede mantıksal bir bağlantı oluşturur | Veya |
İki ifade | Xor |
İki ifade üzerinde mantıksal bir dışlama gerçekleştirir | Eşit |
İki ifadede mantıksal bir eşdeğerlik gerçekleştirir | İf |
İki ifade üzerinde mantıksal bir sonuç ortaya koyar | Öncelik sırası VBA'daki operatörler tam olarak Excel formüllerindeki ile aynıdır. Üstellik en yüksek önceliğe sahiptir. Çarpma ve bölme bir sonraki gelir, ardından toplama ve çıkarma. Parantezleri, doğal önceliği değiştirmek için herhangi bir operatöre parantez içerisine koymak için kullanabilirsiniz. Bu koda bir göz atın: |
x = 3 y = 2 z = x + 5 * y
Önceki kod yürütüldüğünde z'nin değeri nedir? 13'ü yanıtladıysanız, operatörün önceliği kavramını anladığınızı ispatlayan bir altın yıldız elde edersiniz. 16'ya karşılık verdiyseniz, şunu okuyun: Çarpma işlemi (5 * y) önce yapılır ve bu sonuç x'e eklenir.
Birçok programcı, parantezleri, gerekli olmadığında bile kullanmaya meyillidir. Örneğin, gerçek hayatta son atama ifadesi şu şekilde yazılabilir:
z = x + (5 * y)
Gerekli olmasa da parantezleri kullanmaktan utanmayın - özellikle de Böylece kodunuzun anlaşılması kolaylaşır. Veya ek parantez kullanıp kullanmadığınız umurunda değildir.