0 212 951 05 08   bilgi@ofisdata.com

Yazılarımız

OfisData

EXCEL MAKRO NEDİR?

Makro Nedir sorusuna kısaca şöyle cevap verilebilinir; tek bir tık ya da tek tuşa basarak birden fazla işin yapılması için yazılmış komutlar dizisidir. Excel içerisinde yapılan işlemlerin yüzde 100'’üne yakın kısmını makro kodlarına yazarak otomatik yaptırabilirsiniz. Makro içerisinde hem komut hem fonksiyon hem de kendinizin oluşturduğu formülleri kullanabilirsiniz. Excel makro işlemleri için VBA (Visual Basic for Applications) dili kullanılır.

Makrolar genellikle şu durumlar için kullanılır;

  • Sıkıcı ve tekrar gerektiren işleri yapmak için
  • Uzun uzun yapılan işlerin bir defa yapılarak gerektiğinde kullanılması için

Makrolar sayesinde sıkıcı ve tekrarlayıcı işler daha kısa yapılır. Sıkıcı ve tekrar kısmını yazdığınız makro sayesinde bilgisayar halleder.

Peki makro ne zaman lazım olur. Ne zaman makro yazma gereği duyarız.

Buna sizin karar vermeniz gerekiyor. Şöyle düşünelim. Her gün yapılması gereken bir iş var. Bunu her gün 3-4 dakika vererek yapıyorsunuz. Böyle bir durumda bu işi yapan bir makro yazarak işin makro tarafından yapılması sağlanabilir.

Makro öğrenmek zor değildir. İşin içine girince bazı şeyler yerli yerine oturmaktadır. Uygulama yaptıkça ve kaynak araştırması yaptıkça, daha önce yazılmış Excel makro örneklerini inceledikçe Excel makro nedir sorusuna daha kolay cevap bulacaksınız.

Excel Makro Nedir?

Excel Hazır Makrolar

Excel hazır makrolar diye arama yapıldığında birçok makro koduna ulaşmak mümkündür. Hazır makro kodlarından ziyade makro mantığını anlayarak sizin kendinizin makro yazması en mantıklısıdır. Hazır makro kodları bazen tam istediğiniz gibi olmazlar onlar üzerinde işlem ve değişiklik yapılması gerekecektir. Hazır makro kodlarından birkaç tanesini inceleyelim.

Excel Makro Nedir? Excel Makro Nedir?

Yukarıda iki tane hazır makro kodu vardır. Birincisi D3, D4, D5 hücrelerindeki dosya bilgilerine göre o dosyayı açar. İkincisi ise açık olan dosyanızı C sürücüsünde Yedek klasörünün içine yedek alır.

Sub Yedekle()

'dosyanızın istenilen yere yedek alır

Dosya_ismi = ActiveWorkbook.Name

ActiveWorkbook.SaveCopyAs "c:\yedek\ " & Dosya_ismi

ActiveWorkbook.Save

End Sub

Excel Makro Düzenlemek

Excel için makro yazmak kadar makro düzenlemekte önemlidir. Kullandığınız makroları bazen kendiniz oluşturursunuz bazen de hazır makroları düzenleyerek kendi işinize yaracak hale getirirsiniz. Bu durumda Excel makro düzenlemek ile alakalı biraz kaynak araştırması yapmak gerekiyor. Makro düzenlemesi yapmadan önce orijinal ve sorunsuz olan makro kodlarınızın yedeklerini mutlaka alınız. Bazen silinmemesi, değişmemesi gereken yerler oluyor, değişiklikten sonra makro çalışmaz oluyor. Böyle bir durum ile karşılaşmamak için makrolarınızın yedeğini alınız.

Excel Makro Nedir?

Elimizde yukarıdaki resimde olduğu gibi bir makro kodu var. Bu makro kodu 4 defa ofis data Excel eğitimi diye yazıyor. VBA ve diğer programcılık dillerini bilenler For Next döngüsünü bilirler. Verilen sayı kadar döngü dönerek döngünün içindeki işi yapar. Bizde makromuz bir değişken kullanarak 4 defa mesajın yazılmasını sağladık.

Excel Makro Nedir?

Makroyu çalıştırdığımız makrodaki komutlar işletildi. A1 hücresinden başlayarak 4 defa mesajı yazdı. Şimdi bu makroda bazı şeyleri değiştirelim.

Excel Makro Nedir?

Makro kodlarımız üzerine biraz eklemeler yaptık. Yeni eklenen kodlar ile makromuz artık A1 hücresinden mesaj yazmaya başlamıyor. Sizin vereceğiniz satır ve sütundan başlayarak yazıyor. Kaç adet yazacağını da siz belirliyorsunuz.

Sub mesajyaz()

' 4 defa ofis data excel eğitimi yazısını yazıyor

satir = [B2]

' B2 hücresindeki satirdan başlayacak

sutun = Range("B3")

'B3 hücresindeki sütundan başlayacak

kactane = [B4]

'kaç adet yazı çıkmasını istiyorsak

mesajne = [B5]

For i = 1 To kactane

ActiveSheet.Cells(i + satir, sutun).Value = mesajne

Next i

'

End Sub

Makro üzerine bir kod daha ekledik. Şimdi mesaj metnini de B5 hücresinden almaktadır. B5 hücresinde ne mesaj var ise o yazılmaktadır.

Excel Makro Nedir? Excel Makro Nedir?

Yukarıdaki örnekte de görüldüğü gibi makrolar üzerinde değişiklik yapmak çok da zor değildir. Birazcık Excel bilgisi birazda VBA bilgisi excel makro düzenlemek işlemini yapabilirsiniz.

Excel Makro Kodları

Yazımızın yukarılarında da bahsettiğim gibi Excel ile VBA birlikteliğinden dolayı birçok makro kodu vardır. Bazı zamanlar gelir ki küçücük bir kod ile devasa işler hal olmaktadır. Aşağıda verilen makro kodları işinize yarayacak excel makro örnekleri arasında yer alacaklardır. Bu kodları makrolarınıza ekleyerek ve değiştirerek kullanabilirsiniz.

Sub degerata()

Worksheets("sayfa5").Activate

ActiveCell.Value = 35

End Sub

Yukarıdaki degerata makrosunda sayfa5’deki aktif hücrenin değerini 35 yapar makroyu çalıştırmadan önce fare hangi hücrede ise o hücrenin içeriği değişir.

Sub B5hucresikoyuyap()

Worksheets("sayfa5").Activate

Worksheets("sayfa5").Range("B5").Activate

ActiveCell.Font.Bold = True

End Sub

Yukarıdaki B5hucresikoyuyap makrosunda sayfa5’deki B5 hücresinin içeriği koyu(bold) yapılıyor

Sub hucreozelligi()

Worksheets("sayfa5").Activate

ActiveCell.CurrentRegion.Select

Selection.Style = "Currency"

End Sub

Yukarıdaki hucreozelligi makrosunda sayfa5’deki aktif hücre özelliği finansal(Currency) olarak değiştirilir.

ActiveSheet.Cells(4, 5).Select

-veya-

ActiveSheet.Range("C4").Select

 

Yukarıdaki iki kodda aynı birisinde hücre adı kullanılıyor. Diğerinde hücrenin satır ve sütun sayıları kullanılıyor.

ActiveSheet.Range(Cells(2, 3), Cells(10, 4)).Select

 

ActiveSheet.Range("C2:D10").Select

 

ActiveSheet.Range("C2", "D10").Select

 

Yukarıdaki kodlar hepsi aynı işi yapar ve çalışma sayfanızda C2:D10 hücre aralığını seçmek için kullanılır.

Sub buyukhar() ' Belirtilen aralıktaki her bir hücreye tek tek git. For Each x In Range("A1:A5") ' Aralıktaki metni büyük harflere dönüştür. x.Value = UCase(x.Value) NextEnd Sub

Yukarıdaki makro örneğinde ise A1 hücresi ile A5 hücresi arasındaki bütün hücreler taranarak içindeki bilgiler büyük harf olarak yazılmaktadır. Dikkat edilirse büyük harfe çevirme kodu olan BÜYÜKHARF fonksiyonun İngilizcesi olan Ucase fonksiyonu kullanıldı. Makrolar da bazen buna benzer sorunlar yaşanıyor. Genellikle fonksiyonların İngilizcelerinin kullanılması gerekiyor.

Yukarıda örnekleri verilen makro kodları başta olmak üzere bütün makrolar visual basic kodlarıdır. Visual Basic programı ise Visual studio içerisinde yer alan bir programdır. visual studio örnek kodlar diye arama yapılarak makro kodlarına ulaşmanız mümkündür.

Excel Makro Dersleri

Excel programı kendi içerisinde bölümlere ayrıldığı gibi bir bölümünü de makrolar bölümü oluşturmaktadır. Makro konusu ileri Excel konuları arasındadır. Excel makro dersleri de kendi içerisinde bölümlere ayrılabilir. Belli başlı makro ders konuları şunlardır;

  • Makro Kaydetmek
  • Kaydedilen Makroyu Açmak
  • Makroya Kısayol Tuşu Atamak
  • Makroyu Bir Menü Öğesine Atamak
  • Visual Basic Düzenleyicisini Açmak
  • Makro içinde değişken kullanma
  • Makro içinde döngü kullanma
  • Makro içinde Karşılaştırma Operatörleri kullanımı
  • Makro içinde Mantıksal Operatörler kullanımı
  • If – else -EndIf Yapısının kullanımı
  • makro içinde For – Next ve For Each Döngüsünün kullanımı

ilerledikce userform ve worksheet kullanımı ile ilgili makro kodlarının yazımı kullanılır.

İleri Excel

Her program gibi Excel’inde öğrenme seviyeleri vardır. Kış gelince televizyonlarda haberlerde falan “ileri sürüş teknikleri” diye haberler yaparlar. Her mesleğin her işin en üst seviyesi mevcuttur. Excel programında da ilerlemek isteniyorsa ileri Excel dersleri ile kendinizi yetiştirmeniz lazımdır. İleri sürüş teknikleri nasıl bir eğitmen gözetiminde ve trafikten arındırılmış yollarda yapılıyorsa ileri Excel konularını öğrenmek içinde bir kursa gitmeniz ve bir eğitimciden ders almanız gerekmektedir. ileri Excel konuları arasında yer alan makrolar ile çalışma meselesini de bu şekilde halledebilirsiniz.

Visual Basic

Microsoft firmasının geliştirmiş olduğu programlama dili olan Visual Basic yapısı gereği öğrenilmesi kolay diller arasındadır. Excel’de ve ofis programlarında makro ve program yapma üzerine ilerlemeyi düşünen herkesin Visual Basic programını öğrenmesi gerekmektedir. Excel ve makro konularında kendinizi geliştirmek için Visual Basic dersleri ve konularını güzel bir şekilde öğrenmeniz gerekiyor. Visual Basic öğrenmek için bu konuda eğitim veren kurslara gidebilirsiniz.

PAYLAŞ


 OFİS DATA