Makroda kullanılan ifadelerin anlamları

Katılım
14 Kasım 2017
Mesajlar
618
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
07-01-2024
Arkadaşlar bu site sayesinde basit bir şekilde makro kodlamayı öğrendim şimdi işi biraz daha ileriye taşımak istiyorum bilmediğim ifadeler var bunları aşağıda sıralıyorum. Bu ifadelerin ne anlama geldiklerini ve nasıl çalıştıklarını küçük örneklerle anlatabilir misiniz ?

Dim
As
As Integer
As String
As Long
Set
For i
Next
CStr
Cells
Rows
Count
Column
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,167
Excel Vers. ve Dili
2019 Türkçe
Merhaba.

Dim = Değişken tanımlama başlangıç metni
As = türkçedeki "dir " eki gibi, değişken adından sonra kullanılır Örnek (Dim DeğişkenAdı As String) =Değişken bir String türünde(dir)
As Integer = Bu değişken rakamdır ve bu rakam (-2.147.483.648 - 2.147.483.648) arasında bir değer alabilir. Dışında bir değer alamaz. Küsuratlı olamaz
As String = Bu değişken bir metindir. Bu değişkene rakam bile atansa bunu metin olarak algılar ve kullanır.
As Long = Bu değişken uzun bir rakamdır ve bu rakam (-922.337.203.685.477 - 922.337.203.685.477) arasında bir değer alabilir. Küsuratlı olamaz.
As Double =Bu değişken küsuratlı bir rakamdır.
Set = Bir nesne tipinde bir değişkene değer atanırken kullanılır. Örnek (dim Hücre as range) (Set Hücre = Range("A1") )
For i = For bir döngü olduğunu bildiren tanımdır. i değişkendir
Next = Döngünün son satırını gösterir.
CStr = Fonksiyonlardaki =MetneÇevir() fonksiyonu gibi, rakamları metne çevirir
Cells = Hücre
Rows = Satırlar
Count = Sayısı, Adeti Örnek(Rows.Count) Sayfadaki satır sayısını döndürür.
Column = Kolon
 
Katılım
14 Kasım 2017
Mesajlar
618
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
07-01-2024
Hocam benim mantığını çözemediğim şey şu. Aşağıda yazmış olduğum kodda, değişken tanımlama başlangıç metni ( Dim ) kullanmadan, değişkenin türünü (As Integer , As String, As Long veya As Double ) belirtmeden A ve B değişkeni yazdım ve kod istediğim gibi çalıştı. Yani bu ifadeleri kullanmadan da aynı sonuca ulaşılabiliyorsa neden bu ifadelere ihtiyaç duyuluyor ?

Kod:
Sub Makro1()

A = Range("A1")
B = Range("A2")

Range("B1").Value = A + B

End Sub
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,167
Excel Vers. ve Dili
2019 Türkçe
Excelin standartlarında değişken tanımlamaları yapmadan değişken kullanılabiliyor. (Standart olarak zorunlu değil)
Ancak bu doğru bir yöntem değil.
Zorunlu hale getirmek için deklarasyon kısmına Option Explicit yazılması gerekiyor. Bunu otomatik olarak eklenmesini isterseniz ki bu çok doğru olur "Tools/Options" seçip açılan pencerede "editör" tabında bulunan "Require Veriable Declaration" seçip Tamamı tıklatın.
Bunu yaptıktan sonra eklediğiniz her kod editörünün başına Option Explicit otomatik olarak yazılacaktır.

Değişken tanımlamalarında düzen açısından değişken tipi kadar değişken ismi de önemlidir. Değişkenlere a, b, i, x gibi anlamsız isimler yerine kullanım amacını belirten bir isim vermek daha sonra kodları okurken çok faydalı olacaktır.

Konuyu daha iyi anlayabilmek için değişkenler hakkında araştırma yaparsan çok faydalı olur. Programlamanın temelini oluşturur.
Araştırma yaparken Excele bağımlı kalmadan herhangi bir yazılım dili hakkındaki yazıları da okuyabilirsin.
 
Katılım
14 Kasım 2017
Mesajlar
618
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
07-01-2024
Zahmet verdim hocam çok teşekkür ederim zaman ayırdığınız için.
 
Üst