Excel(Makro) Visual Basic Programlama – 1

Ocak 8, 2021 0 Yazar: alikperislam

‘ilk seçim komutu olan range komutunu sub fonksiyon ile kontrol ediyoruz :’
Sub secimRange() ‘yorum satırı…’
Range(“D8”).Select ‘D8 hücresini seç komutu oldu.’
Selection.Value = 10 ‘seçili hücreye 10 değerini atadık.’
Range(“A1:B15,C17:F19”).Select ‘a1 den b15 e kadar seç ve c17 den f19 a kadar seç komutu.’
Range(“g17:h21”).Select ‘g17 den h21 e kadar seç’
Range(“a5,b13,c17”).Select ‘Ayrı ayrı da seçebilmektedir bu şekilde.’
End Sub

Sub secimCells()
‘ikinci seçim komutu olan Cells komutunu sub fonksiyon ile kontrol ediyoruz :’
‘Cells komutu içeriisnde (1,1) yazıldığında ilk satır daha sonra sütun girdisi yapılır.’

‘değer atamak için Dim isim as veriTipi yazılmaılıdr. ‘
Dim i As Integer
Dim j As String
i = 10
j = “E”
Cells(1, 1).Select
Cells(1, “E”).Select
Cells(i, j).Select
End Sub

Sub forDongusu()
Dim i As Integer
For i = 1 To 5 ‘for göngüsü 1 den 5 e kadar çalışsın.’
Debug.Print (i) ‘yazdır değerleri’
Next i ‘ bu aslında i++ aynısı.’

End Sub

Sub degerAtama1()
‘Değer atama işlemini yapabiliyoruz direkt olarak.’
Range(“A1”).Value = “Yönetim Bilişim Sistemleri”
Range(“A2”).Value = 1500

End Sub

Sub degerAtama2()
Dim hucre As Range ‘Veri tipi olarak aralık veriyoruz yani aslında hücre veriyoruz.’
Set hucre = Range(“A5”) ‘Set ile hucrenin hangi satır sutuna ait olduğunu range komutunda belirledik.’
hucre = 100 ‘Hücreye değer atamasını yapmış olduk.’
End Sub

Sub hucreyeAıtDongu1()
‘D1 den D5 e kadar 1 2 3 4 5 yazdıracak.’
Dim i As Integer
For i = 1 To 5
Range(“D” & i) = i
Next i

‘ D deki değerlerin 2 katı değerlere eşit olacak E deki değerler’
For i = 1 To 5
Cells(i, “E”) = Cells(i, “D”) * 2
Next i

End Sub

Sub teklıHucredenDıgerHucreyeVeriTasıma()
Dim kaynakHucre As Range
Dim HedefHucre As Range
Set kaynakHucre = Range(“D1”)
Set HedefHucre = Range(“F1”)
HedefHucre = kaynakHucre
End Sub

Sub cokluHucredenVeriTasıma()
‘ForEach kullanacağız yazdırmak için :’
Dim hucre As Range
Dim Alan As Range
Set Alan = Range(“D1:D5”)
For Each hucre In Alan
Debug.Print (hucre)
Next

End Sub

‘uygulama yapalım :’
Sub Topla()
‘D1-D5 arasındaki değerleri topla ve immediate pencersinde göster.’

Dim hucre As Range
Dim Alan As Range
Dim deger As Integer
Dim toplam As Integer
deger = 0
toplam = 0

Set Alan = Range(“D1:D5”)
For Each hucre In Alan
deger = hucre.Value
toplam = toplam + deger
Next
Debug.Print (“Toplam : ” & toplam)

‘Toplam sonucu A6 hücresine yazdır.’

Range(“A6”) = toplam

‘ya da ‘

Dim aYedi As Range
Set aYedi = Range(“A7”)
aYedi = toplam

‘Biçimlendirme şu şekilde yapılmkatadır. :’
With aYedi
.Interior.Color = RGB(120, 138, 10)
.Font.Color = RGB(255, 255, 255)
.Font.Name = “Tahoma”
.Font.Size = 12
.Font.Bold = True
.Font.Italic = True
End With

End Sub

Sub bitisikHucreSec()
‘yanyana olan tüm hücreleri seçer.’
Dim hucre As Range
Set hucre = ActiveCell.CurrentRegion ‘yanyana olanları seçer ‘
Debug.Print (“Satır : ” & hucre.Row)

Debug.Print (“Sütun : ” & hucre.Column)

End Sub