En Kullanışlı Makro Kodları
Bu makale, Excel’de kullanışlı olabilecek temel 10 makro kodunu ele almaktadır. Makro kodları, Excel kullanıcılarının zaman kazanmalarına ve karmaşık işlemleri hızla gerçekleştirmelerine yardımcı olabilir. Bu makro kodlarının önemi, verilerin düzenlenmesi veya farklı tabloların oluşturulması gibi görevlerde daha da belirgin hale gelir.
Makro kodları geliştirirken benzer mantıkta işlemleri sık sık tekrarlamak gerekebilir. Bu nedenle, bu kodları saklayarak ve gerektiğinde kullanmak için ufak değişiklikler yaparak zaman tasarrufu sağlayabilirsiniz.
Makale, 10 temel makro kodunu ayrıntılı olarak açıklamakta ve bu kodların kullanıcılara nasıl yardımcı olabileceğini vurgulamaktadır. Bu kodların Excel kullanıcıları için kullanışlı olduğu ve bunları uygulamanın oldukça basit olduğu belirtilmektedir. Bu kodları kullanmak için, Excel’de geliştirici sekmesine veya tüm Office uygulamalarında (Excel, Word, PowerPoint vb.) Alt+F11 kısayol tuşuna erişim sağlayarak VB editörüne erişmeniz gerekmektedir.
Seçtiğiniz hücreden itibaren istediğiniz kadar sayıda sağa doğru boş sütun ekler ve diğer sütunları da öteler.
Sub CokluSutunEkle()
Dim i As Integer
Dim j As Integer
ActiveCell.EntireColumn.Select
On Error GoTo Son
i = InputBox(“Eklemek istediğiniz sütun sayısını giriniz”, “Sütun Ekle”)
For j = 1 To i
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromRightorAbove
Next j
Son: Exit Sub
End Sub
Seçtiğiniz hücreden itibaren istediğiniz kadar sayıda aşağı doğru boş sütun ekler ve diğer satırları da öteler.
Sub CokluSatirEkle()
Dim i As Integer
Dim j As Integer
ActiveCell.EntireRow.Select
On Error GoTo Son
i = InputBox(“Eklemek istediğiniz satır sayısını giriniz “, “Satır Ekle”)
For j = 1 To i
Selection.Insert Shift:=xlToDown, CopyOrigin:=xlFormatFromRightorAbove
Next j
Son: Exit Sub
End Sub
Seçtiğiniz hücreden itibaren girdiğimiz sayı kadar otomatik doldurma yapar. Örneğin F7 hücresi seçili iken çalıştırdığımızda açılan giriş kutusuna 5 yazarsak F7 hücresinden aşağı doğru 1’den 5’e kadar sayı birer artan sayıları yazdırır.
Sub OtomatikSeriDoldurma()
Dim i As Integer
On Error GoTo Son
i = InputBox(“Değer giriniz”)
For i = 1 To i
ActiveCell.Value = i
ActiveCell.Offset(1, 0).Activate
Next i
Son: Exit Sub
End Sub
- Seçtiğiniz hücrelerin sütun genişliklerini sütunun içindeki en uzun metne göre otomatik olarak ayarlar.
Sub SutunlariOtomatikAyarla()
Cells.Select
Cells.EntireColumn.AutoFit
End Sub
- Seçtiğiniz hücrelerin satır genişliklerini satırın içindeki metne göre otomatik olarak ayarlar.
Sub AutoFitRows()
Cells.Select
Cells.EntireRow.AutoFit
End Sub
- Excel’in tüm hücrelerini çözdükten sonra metni kaydır özelliğini çözer ve satır, sütun genişliklerini otomatik olarak ayarlar.
Sub MetniKaydirTemizle()
Cells.Select
Selection.WrapText = False
Cells.EntireRow.AutoFit
Cells.EntireColumn.AutoFit
End Sub
- Birleştirilmiş seçili hücreleri eski haline geri döndürür.
Sub UnmergeCells ()
Selection.UnMerge
End Sub
Durum çubuğunda makro kodunun işlenmesi sırasındaki ilerlemenin yüzdesini görmek için aşağıdaki kodu kullanabiliriz.
Sub DurumCubugundaIlerleme()
Application.StatusBar = “İşlem başlıyor”
For k= 1 To 5000
Cells(k, 1) = k
Application.StatusBar = ” İşlemin bitmesi için lütfen bekleyin ” & Round((k / 5000 * 100), 0) & “%”
NextApplication.StatusBar = “”
End Sub
İlgili sayfanın sağ üst köşesine o günün tarihini yazdırır. Üst ortada Satış Raporu ve üst solda ise ABC şirketi yazar.
Sub UstBilgiyeTarihEkleme()
With ActiveSheet.PageSetup
.LeftHeader = “ABC Şirketi”
.CenterHeader = “Satış Raporu”
.RightHeader = “&D”
.LeftFooter = “”
.CenterFooter = “”
.RightFooter = “”
End With
ActiveWindow.View = xlNormalView
End Sub
Makro ile Excel dosyasında çalışırken PowerPoint programını açmak için aşağıdaki kodu kullanabiliriz. Index değerini 0 yazarsak Hesap Makinası, 1 yazarsak Word, 3 yazarsak Outlook açılır.
Sub PowerPointAc()
Application.ActivateMicrosoftApp Index:=2
End Sub