Makro Eğitim İçeriği

  • DIR Fonksiyonu

    DIR fonksiyonu, dosya veya klasörlerin var olup olmadığını kontrol etmemize yarar. DIR fonksiyonu, bir dizin (dosya veya klasör yolu) değişkeni kullanır ve dosya veya klasörün adını döndürür. Eğer yol adı bulunamazsa, DIR fonksiyonu sıfır uzunluklu bir dize (“”) döndürür. Syntax Dir [( dizin [, özellik ]) Not: Joker karakterler (* ve ?) dizinde kullanılabilir. DOSYA…


  • Variant Diziler

    Variant Diziler kullanmanın avantajları aşağıdaki gibidir: Aşağıdaki örnekte variant dizide bulunan her değere 100 eklendikten sonra hücrelere yazdırılır. Bu yöntem çok daha hızlıdır.

    Kategori:

    Tarih:

    Devamını oku: Variant Diziler

  • İki Boyutlu Dizi

    İki boyutlu dizi iç içe döngü yardımıyla elde edilebilir. Örnek: Kodlar:

    Kategori:

    Tarih:

    Devamını oku: İki Boyutlu Dizi

  • Dinamik Diziyi Muhafaza Etmek

    Eğer dinamik dizide tanımlı değişkenlere yenisini eklemek istersek Preserve ifadesini kullanmamız gerekir. Sub Dizi_Muhafaza() Dim Musteri() As String ReDim Musteri(1 To 2) Musteri(1) = “Ali” Musteri(2) = “Hakan” ‘Eğer “ReDim Musteri(1 To 3)” olarak yazarsak yukarıdaki 2 tanımlama sıfırlanır. Bu yüzden Preserve girilir: ReDim Preserve Musteri(1 To 3) Musteri(3) = “Fatma” MsgBox Musteri(1) & vbNewLine…


  • Dinamik Dizi

    Dizi aralık boyutu arttıkça dizi değişkenlerinin sayısı da artar. Dizinin tam boyutu, kod yürütme sırasında tanımlanır. Boyutu tanımlamak için Redim ifadesini kullanılır ve ardından dizi içeriği değişkenlerle doldurulur. Sub Dinamik_Dizi() Dim AylarDizisi() As String Dim dinamik As Long Const ilkSatir As Long = 1 Dim r As Long dinamik = Range(“A” & ilkSatir).CurrentRegion.Rows.Count dinamik =…

    Kategori:

    Tarih:

    Devamını oku: Dinamik Dizi

  • Tek Boyutlu Dizi

    Bu yöntemle tek bir satır veya sütunda bulunan bir aralıktaki hücreleri dizi olarak tanımlıyoruz. Sabit tek boyutlu dizi, Dim ifadesi sırasında tanımlanır: Dim AylarDizisi(1 To 12) As String Örnek: Sonuç:

    Kategori:

    Tarih:

    Devamını oku: Tek Boyutlu Dizi

  • Timer ve Speech Özellikleri

    Timer: Döngülerde geçen süreyi bulmak için timer özelliğini kullanırız. Timer özelliği gece yarısından bu zamana kadar geçen saniyeyi hesaplar.  Speech: Makro kodu bittiği zaman bize sesli bir uyarı vermesi için Speech özelliğini kullanırız. Speech özelliği sadece ingilizce dili desteklemektedir. Örnek: Sub Many_Finds() ‘Timer başlangıç Dim Basla Basla = VBA.Timer Dim UrunId As Range Dim i…


  • Find Yöntemi

    Find yöntemi, For Next ve Do Loop döngülerine göre daha hızlı sonuç almamızı sağlar. LookIn ve LookAt metodları opsiyonel olsa bile son uygulanan metodlar otomatik olarak geçerli olacağı için kullanmamız gerekir. Aşağıdaki yöntemle sadece bir arama yapacağız: Aşağıdaki yöntemle birden fazla arama yapacağız:

    Kategori:

    Tarih:

    Devamını oku: Find Yöntemi

  • Do Until / Do While Döngüleri

    Do Until / Do While döngüleri aynı For…Next döngüsü gibi çalışır. Tek farkı For…Next döngüsündeki gibi bir sayaç kullanma mecburiyeti yoktur. Do While döngüsü belirtilen koşul sağlandığı müddetçe çalışır. Do Until döngüsü belirtilen bir koşul karşılanana kadar çalışır. Exit Do komutunda VBA döngüden hemen çıkar. Do Loop dongüsünde While ve Until kullanılmazsa, gereken yerde Exit…


  • For…Next Ters Döngüler

    Döngü sırasında satır silinmesi gibi durumlarda alttaki satırlar yukarı kayacağı için döngüye tersten başlanması daha uygun olur. Sub Gizli_Satirlari_Silme() Dim r As Long Const ilkSatir As Byte = 4 ‘datanın ilk satırı (başlık hariç) Dim SonSatir As Long ‘CurrentRegion ve ilkSatir’da başlık 2 defa dahil olduğu için 2 çıkarıyoruz SonSatir = Range(“A” & ilkSatir).CurrentRegion.Rows.Count +…

    Kategori:

    Tarih:

    Devamını oku: For…Next Ters Döngüler

  • For…Next İç içe Döngüler

    Bu örnekte hücrelerin içinde tek tek dolaşıp metin ve sayıları ayıklayacağız. Sub icice_Dongu() Dim i As Long ‘her hücrenin içinde döngü yapmak için Dim myDeger As String Const ilkSatir As Byte = 4 Dim SonSatir As Long Dim NumBulunan As Long Dim TxtBulunan As String Dim r As Long ‘satırlar arasında döngü yapmak için SonSatir…


  • For…Next Sayaç Döngüleri

    Aşağıdaki basit döngüde 1000’den büyük her değere 100 ekleyeceğiz. Sub Basit_Dongu() Dim i As Long Dim SonSatir As Long Dim myDeger As Double Const ilkSatir As Byte = 4 ‘A sütunundaki değerlerde boşluk yoksa SonSatir = Range(“A” & ilkSatir).End(xlDown).Row ‘4 den SonSatir sayısına kadar her seferinde 1 artırılır For i = ilkSatir To SonSatir myDeger…