YBS301U-İŞLEM TABLOSU PROGRAMLAMA
Ünite 2: Visual Basic’in Temelleri
Giriş
Bu bölümde VBA programlarını geliştirirken yararlanılan Visual Basic Editörünün (VBE) kullanımını inceleyeceğiz.
Visual Basic Editörünün Kullanımı
VBA Editörü (VBE) sadece Excel’de oluşturulan makroları görüntülemek ve çalıştırmak amacıyla değil VBA programları yazmak, test etmek ve çalıştırmak amacıyla kullanılan bir tümleşik geliştirme ortamıdır. Excel programında Alt+F11 tuşlarına basarak ya da Excel şeridinde Geliştirici bölmesindeki Visual Basic düğmesine tıklayarak VBA editörünün görüntülenmesi sağlanır.
VBE açıldığında üstte bir menü ve araç kutusuna sahip bir ana pencereyle karşılaşırız. Ana pencerenin altında proje penceresi (Project Explorer), kod penceresi (Code Window), özellikler penceresi (Properties Window) olmak üzere üç temel pencere görüntülenir. Anlık pencere (Immediate Window), VBA deyimlerini doğrudan yürütmek, program içinden sonuçları ekrana yazdırmak ve kod içindeki hataları ayıklamak için kullanışlıdır.
VBE menü çubuğu, VBE’deki çeşitli bileşenlerle ilgili işlemler yapmak için kullanılan komutları içerir. VBE kısayol menülerine de sahiptir. VBE’deki hemen hemen her nesne üzerinde farenin sağ düğmesine tıklayabilir ve o nesneyle ilgili komutların kısayol menüsüne erişebilirsiniz.
Varsayılan olarak menü çubuğunun altında bulunan Standart araç çubuğu, mevcut dört VBE araç çubuğundan biridir. Araç çubukları özelleştirilebilir, hareket ettirilebilir. Diğer araç çubukları olan Debug, Edit ve UserForm’un menüdeki View àToolbars seçeneğinden erişilerek görüntülenmesi veya gizlenmesi sağlanabilir.
VBE’de programlarda hata ayıklama esnasında yardımcı olan Yereller (Locals) ve İzlemeler (Watches) pencereleri de bulunur. Kullanıcı formları tasarlamak amacıyla kullanılan UserForm penceresi ile Excel ve VBA nesnelerine erişmek amacıyla kullanılan Nesne Tarayıcısı (Object Browser) pencerelerine de View menüsünden erişmek mümkündür.
VBA Kodlarını Oluşturmak
Kullanıcı Formları (UserForm): Kullanıcı formları Excel ekranında görüntülenebilen ve üzerinde geliştirici tarafından düğmeler, etiketler, liste kutuları vb. arayüz ögeleri yerleştirilerek tasarlanmış pencerelerdir.
Modüller (Module): VBA editöründe yeni bir Modül penceresi açarak bildirimler yapabilir, ortak değişkenler tanımlayabilir ve Sub, Function ve Property yordamları biçiminde Visual Basic programları yazabilirsiniz. VBE’de bir Excel sayfasına yeni bir modül eklemek için menüden Insert à Module seçilir. Kod penceresine boş bir modül penceresi açılır. Daha sonra bu modül içine bildirimler ve yordamlar yerleştirmeye başlanabilir.
Sınıf Modülleri (Class Module): VBA editöründe nesne tabanlı programlama yaklaşımını uygulamak amacıyla Class Module türünde yapılar oluşturulabilir. Sınıf
modülleri Visual Basic kodlarıyla oluşturulan özellikler, yöntemler ve olayları içerebilir. Bu sınıflardan daha sonra “New” anahtar sözcüğü yardımıyla örnek nesneler oluşturularak “Set” anahtar sözcüğü ile nesne değişkenlerine atanabilir.
Yordamlar: VBA yapısal programlama yaklaşımını uyguladığından dolayı karmaşık problemlerin alt problemlere bölünmesi ve bu problemlerin de prosedür (procedure) adı verilen program parçacıkları ile çözüme kavuşturulmasına dayalı mimariyi uygular. Türk bilişim dünyasında prosedür sözcüğünün karşılığı olarak yordam sözcüğü kullanılmaktadır. Yordamlar tek giriş ve tek çıkış noktasına sahip program bloklarıdır ve böylece programlar büyüdükçe artan karmaşıklığın önüne geçilmiş olur. VBA’da program modülleri altyordamlar (Sub), işlevler (Function) ve bu kitapta yer vermeyeceğimiz özellikler (Property) olmak üzere üç tür yordam içerebilir.
Altyordamlar (Sub): VBA modüllerinde Sub … End Sub bloğu içinde altyordamlar oluşturulur. Bu altyordamlar programlar birer makro olarak Excel ekranında çağrılabileceği gibi “Call” anahtar sözcüğü ile VBA programı içindeki diğer altyordamlar ve işlevlerden çağrılabilir. Altyordamlar herhangi bir değer döndürmezler. (Insert à Procedure menü komutu àAdd Procedure à Sub)
İşlevler (Function): İşlevler Function … End Function bloğu içine yazılan Visual Basic kodlarını içeren birer yordamdırlar fakat bir değer döndürmeleri beklenir. (Add Procedure à Function) Yordam oluşturmak için Add Procedure diyalog kutusu kullanmak zorunlu değildir.
Özellik (Property) Altyordamları: Property bir nesnenin bir özelliğine verilen isimdir. Sınıf modüllerinde Get, Set ve Let türlerinde özellik (property) altyordamları oluşturulabilir.
VBA Kodlarını Çalıştırmak
VBA ile yazılan programlar VBA editöründe menüden RunàRun komutu ile, Standart araç çubuğundaki Run düğmesine tıklayarak ya da F5 tuşuna basarak çalıştırılabilir. VBA editörü dışında çalıştırmak için birden fazla yöntem bulunmaktadır:
Makro olarak çağırma: Sub formundaki VBA altyordamları Excel ekranında Makrolar düğmesine tıklanarak açılan listeden seçilerek çalıştırılabilirler.
Kodları düğme vb. nesnelere iliştirme: Excel ekranına örneğin bir komut düğmesi gibi bir arayüz ögesi yerleştirilerek bu düğmeye bir Sub altyordamı iliştirilebilir.
Excel’de işlev olarak çağırma: Geliştirici tarafından oluşturulan Function türü yordamlar Excel’de hazır işlevlerden biri haline gelirler ve Excel hücrelerinde formül olarak kullanılabilirler.
Diğer nesne olaylarıyla tetikleme: VBA ile yazılan bir program kullanıcının Excel’de çalışma kitabı ya da sayfalar üzerinde gerçekleştirebileceği yükleme, açma, kapatma vb. temel olaylara iliştirilebilir.
Nesne Yönelimli Programlama
Nesneler (objects) sınıf (class) adı verilen soyut yapılardan üretilebilirler. Nesne yönelimli programlamada gerçek dünyanın bir modeli sınıfların hiyerarşisi biçiminde tasarlanır. Bu hiyerarşide yer alan her sınıfın kendi özellikleri (properties), yöntemleri (methods) ve olayları (events) bulunabileceği gibi, ayrıca hiyerarşideki pozisyonunu tanımlayan alt sınıfları ve üst sınıfları da bulunmaktadır. Sınıfın özellikleri tanımlanmış belirli bir örnek ögesine ise nesne adını veriyoruz. Bu türden hiyerarşik nesne yapıları üzerinde gezinmek için “.” sembolü kullanılır.
Her sınıfın ayrıca kendine ait özellikleri bulunur. Sınıftan üretilen örnek nesnelerin bu özelliklerine değer atanabilir. Bazı özellikler ise baştan belirlenmişlerdir ve sadece birer sabit olarak erişime açıktırlar. Yöntemler ise bir sınıfın özelliklerini değiştirmek amacıyla oluşturulan programlardır. Olaylar ise bir nesnenin davranışlarına iliştirilen programlardır.
Excel Nesne Modeli
Excel programı birbiriyle ilişkili yüzlerce nesneden oluşmaktadır ve geliştiricilerin de bu nesnelere erişebilmesi için kapsamlı bir nesne modeli sunulmaktadır. Geliştiriciler VBA kodları içinden üzerinde çalıştıkları Excel dosyasına ait nesnelere erişebilir, yöntemlerini çağırabilir, özelliklerini manipüle edebilir ve olaylarına müdahale edebilirler. Ayrıca Excel nesne modelinden yararlanarak yeni nesneler üretebilirler ve özelliklerini belirleyebilirler.
Excel Nesne modelinin en üstünde o anda çalışmakta olan Excel programını ifade eden Application nesnesi bulunur. Application nesnesinin kendi yöntemleri, özellikleri ve olayları bulunduğu gibi çalışma kitapları (Workbooks) gibi başka alt nesneleri de içerir.
Workbooks nesnesi Excel programı ile oluşturulan ya da açılan çalışma kitaplarının koleksiyonunu tanımlar. Koleksiyon aynı türden nesnelerin oluşturduğu kümedir. Koleksiyonların kendileri de bir nesnedir. O anda aktif olarak kullanılan çalışma kitabı ise Workbook nesnesi olarak adlandırılır. Worksheets nesnesi o andan aktif olan çalışma kitabının içinde bulunan sayfaların bir koleksiyonunu ifade eder. Üzerinde çalışılan sayfa ise Worksheet nesnesi olarak bilinir. Böylece VBA programları yardımıyla çalışma sayfaları ve çalışma kitapları oluşturulabilir, açılıp kapatılabilir, silinebilir, kopyalanabilir.
Açık olan Excel sayfasındaki satır ve sütunların kesişiminde oluşan hücreler Cell nesnesi ile ifade edilir. Bir ya da birden fazla bitişik ya da ayrık hücre ya da hücre grubu Range nesnesi ile ifade edilir.
Nesne Tarayıcısı
VBA’da kullanılabilir Excel nesne modelinin tüm ögelerine erişerek görüntüleyebilmek amacıyla Nesne Tarayıcısı (Object Browser) penceresi kullanılabilir. Menüdeki ViewàObject Browser komutuyla nesne tarayıcının görüntülenmesi sağlanabilir.
Visual Basic Söz Dizimi
VBA, Visual Basic programlama dilinin 90’lı yıllardaki 6.0 sürümünü temel alır ve yordamsal programlama, yapısal programlama ve nesneye yönelik programlama özelliklerinin çoğunu barındıran olay güdümlü bir çerçeve sunar. VB dili gelişmeye devam ederek günümüzde .NET mimarisi içerisinde Visual Basic.NET adıyla gelişimini sürdürmektedir. VBA ise .NET mimarisine ait özellikleri içermeden kendi kimliğini korumaya devam etmiştir.
VBA kodları Visual Basic dilinin içinde önceden tanımlanmış ve başka amaçlarla kullanılamayan anahtar sözcükler, operatörler ve geliştiricilerin kendileri tarafından belirlenen isimlendirmelerin bir arada kullanılmasıyla oluşturulan deyimler aracılığıyla yazılır. VBA ile yazılan kod çalıştırıldığında VBA yorumlayıcısı tarafından ilk satırından son satırına kadar kod içindeki dallanmalar, karar yapıları ve döngüler dikkate alınarak bütün deyimler adım adım işlenir.
VBA programlarında açıklama satırı oluşturmak amacıyla satır başında tek tırnak (‘) sembolü kullanılır. VBA kodlarını yazarken kullanacağınız tek tırnak (') ve çift tırnak (") işaretleri kelime işlemciler tarafından sağa veya sola eğik olarak oluşturulan akıllı tırnaklar şeklinde olmamalıdır.
Deyimler ve İfadeler
VBA’da bir deyim bir tür eylemi, bildirimi veya tanımı ifade eden söz dizimsel olarak eksiksiz bir birimdir. Bu haliyle bilgisayara işlenmesi amacıyla verilmiş olan bir talimattır; anahtar sözcükler, operatörler, değişkenler, sabitler ve ifadeler içerebilir. VBA’da bilgisayar tarafından işlendikten sonra sonuç olarak bir dize (string), sayı veya nesne üreten; anahtar sözcükler, operatörler, değişkenler ve sabitlerin bir kombinasyonundan oluşan deyimlere ifade (expression) adı verilir. Üç deyim kategorisi vardır:
• Bir değişkeni, sabiti veya yordamı adlandıran ve ayrıca bir veri türü belirtebilen bildirim deyimleri. • Bir değişkene veya sabite bir değer veya ifade atayan atama deyimleri. Atama deyimleri her zaman bir eşittir işareti (=) içerir • Eylemleri başlatan yürütücü deyimler. Bu deyimler bir yöntem veya işlevi yürütebilir ve kod blokları arasında döngü veya dallanma gerçekleştirebilir. Diğer bir deyişle değer ataması ya da bildirim gerçekleştiren deyimlerin dışında kalan deyimlerdir. Yürütülebilir deyimler genellikle matematiksel veya koşullu operatörler içerir.
Bir deyim genellikle bir satırdan oluşur. Bir satıra sığmayacak kadar uzun deyimlerin satır sonunda alt çizgi işareti (_) ile alt satırdan devam etmesi sağlanabilir. Bu durumda alt çizgi işaretinin öncesine ve sonrasına bir boşluk yerleştirilerek herhangi bir kod parçasıyla temas etmemesine dikkat edilmelidir.
VBE’de bir deyim yazıldıktan sonra ENTER tuşuna basıldığında eğer ekranda söz konusu deyim kırmızı renkte görüntüleniyorsa deyimde bir söz dizimi hatası bulunduğu
anlaşılır. Ayrıca hatanın neyle ilgili olduğunu ifade eden bir hata penceresi görüntülenir.
Excel nesne modelini incelemek için kullanmış olduğunuz Nesne Tarayıcısı ile VBA diline ait nesne modelini de incelemek mümkündür. View menüsünden Object Browser’ı açtıktan sonra daha önce “Excel” kitaplığını seçtiğiniz açılır liste kutusunda “VBA” kitaplığı seçilirse VBA nesne modeline ait tüm nesneler, modüller, sayımlamalar (enumerations); modüllerin içerdiği altyordamlar, işlevler, sabitler ve özelliklere erişebilir ve söz dizimlerini görebilirsiniz.
Object Browser’da “Excel”, “VBA” ve “VBAProject” dışında bulunan diğer kitaplıklar “MSForms”, “Office” ve “stdole” kitaplıklarıdır.
Object Browser’da Kitaplıklara ait açılır liste kutusunda “VBAProject” kitaplığı görüntülenirse, doğrudan doğruya sizin çalışma kitaplığında yazmış olduğunuz VBA programındaki modüller ve altyordamlar listelenir.
Kullanıcıyla İletişim Kurma
MsgBox işlevi: MsgBox işlevi kullanıcıya bir diyalog penceresi içinde mesaj görüntülemek amacıyla kullanılır.
InputBox işlevi: InputBox işlevi kullanıcının klavyeden veri girişi yapmasına olanak sağlar.
Visual Basic Operatörleri
Atama ifadesi, bir işlemi değerlendiren ve sonucu bir değişkene veya nesneye atayan bir VBA yürütücü deyimidir. Bir VBA ifadesinin sonucu ise bir değişkene atanabilir veya özellik değeri olarak kullanılabilir. VBA’da atama operatörü olarak eşittir işareti (=) kullanılır.
Basit işlemler dışındaki ifadeler çoğu zaman işlevleri kullanır. Bu işlevler yerleşik VBA işlevleri, Excel’in çalışma sayfası işlevleri veya VBA’da geliştirdiğiniz özel işlevler olabilir.
VBA’da önemli bir rol oynayan operatörler ve operatörlerin öncelik sıralarını kitabınız sayfa 49’da yer alan Tablo 2.1’den inceleyebilirsiniz. Operatörlerin varsayılan öncelik sırasını değiştirmek için parantezler kullanılabilir. Ek olarak, VBA, kitabınız sayfa 50’deki Tablo 2.2’de gösterilen mantıksal operatörleri de içerir.
Değişkenler ve Sabitler
Değişkenler bilgisayarın belleğinde ayrılan bellek alanlarıdır. Geliştiriciler belirli bir türde bir değişken tanımlayarak bu değişkene bir isim verebilirler. Bir VBA modülünde yordamları, sabitleri, değişkenleri ve parametreleri adlandırırken uyulması gereken kurallar bulunmaktadır. Bu kurallar örnekleri ile beraber kitabınız sayfa 51’de sunulmaktadır.
VBA’da Önceden Tanımlı Veri Türleri
Program yazarken kullandığımız veriler tamsayılar, gerçek sayılar, dizeler, tarihler, nesneler ve mantıksal değerler gibi değişik türlerde olabilir. Kitabınız sayfa 52’deki Tablo 2.3’te VBA’nın yerleşik veri türlerinin çeşitlerini listelenmektedir.
Değişkenleri Tanımlamak
Bir VBA yordamında bir değişken tanımlanmadan kullanıldığında VBA o değişkeni varsayılan olarak “Variant” türünden tanımlar. Variant veri türü, içine hangi türde veri yerleştirilirse o verinin türünü alan bir bukalemun türdür.
Modüllerin başına ekleyeceğiniz Option Explicit bildirimiyle VBA’yı yordamlarda kullanılacak değişkenlerin türlerini mutlaka tanımlayacağınıza dair beyanda bulunabilirsiniz.
Tür bildirmek için “Dim” anahtar sözcüğü, değişken adı, “as” anahtar sözcüğü ve uygun değişken türünün adını içeren bir deyim oluşturulur.
Yerel Değişkenlerin Tanımlanması
Yerel değişken, bir yordam içinde bildirilen değişkendir. Yerel değişkenleri yalnızca tanımlandıkları yordamda kullanabilirler. Bir yerel değişken bildirmenin yöntemi, bir Sub deyimi ile bir End Sub deyimi arasına bir Dim deyimi yerleştirmektir. Dim deyimleri genellikle Sub deyiminden hemen sonra, diğer kodlardan önce yerleştirilir.
Bir değişken yerel kapsamda bildirilirse, aynı modüldeki diğer yordamlarda aynı değişken adı farklı amaçlarla yeniden kullanılabilir ancak bu durumda her değişkenin değeri sadece kendi yordamında geçerli olacaktır. VBA, yordam sona erdiğinde kullandıkları belleği boşalttığı için genel olarak yerel değişkenler en verimli olanlardır.
Modül Çapında Değişkenlerin Tanımlanması
Bazen bir değişkenin bir modüldeki tüm yordamlar tarafından kullanılabilir olması için değişkeni modülün ilk yordamından önce “Dim” ya da “Private” anahtar sözcüklerinden biriyle bildirmek yeterlidir.
Modül çapında bir değişkenin değeri, bir yordam normal olarak sona erdiğinde (yani, End Sub veya End Function komutuna ulaştığında) değerini korur. Bir istisna, yordamın bir End komutuyla durdurulmasıdır. VBA bir End deyimiyle karşılaştığında, tüm modüllerdeki tüm değişkenler değerlerini kaybeder.
Public (Genel) Değişkenlerin Tanımlanması
Bir projedeki tüm VBA modüllerindeki tüm yordamlar için kullanılabilir haldeki değişkenler Public değişkenler olarak adlandırılırlar. Bir değişkeni Public değişken olarak tanımlamak için bu değişken modül seviyesinde (ilk yordam bildiriminden önce) “Dim” (ya da “Private”) yerine “Public” anahtar sözcüğünü kullanarak bildirilmelidir.
Statik Değişkenlerin Tanımlanması
Statik değişkenler özel bir durumdur. Bu değişkenler yordam düzeyinde beyan edilirler ve yordam normal şekilde sona erdiğinde değerlerini korurlar. Ancak yordam bir End deyimiyle durdurulursa statik değişkenler değerlerini kaybeder. Statik değişkenleri “Static” anahtar sözcüğünü kullanarak bildirebilirsiniz.
Varsayılan olarak tüm sayısal değişkenler sıfır (0), Boolean değişkenler “False”, dize değişkenler boş (“”), tarih değişkenleri “00:00:00” değerini alırlar.
Dizelerle Çalışmak
VBA’da sabit ve değişken uzunluklu olmak üzere iki tür dize vardır. Sabit uzunluklu dizeler, belirtilen sayıda karakterle bildirilir. Maksimum uzunluk 65.535 karakterdir. Değişken uzunluklu dizeler ise teorik olarak 2 milyar karaktere kadar değer tutabilir.
Tarihlerle Çalışmak
Date veri türünü kullanmak, tarihlerle çalışma yapılandırılmış olanaklar sunar. VBA’da, tarihler ve saatler iki kare işareti (#) arasına alınarak belirtilir. VBA’da tarihler her zaman ay/gün/yıl biçimi kullanılarak tanımlanır.
Sabitler
Başlangıçta atanacak bir değerin program boyunca hiçbir zaman değişmediği adlandırılmış sabit bir değere veya dizeye ihtiyaç duyulabilir. VBA’da bu amaçla sabitler tanımlamak mümkündür.
Sabitlerin Tanımlanması
Sabitler “Const” anahtar sözcüğü ile bildirilir. Bir sabit program içinde asla değerini değiştirmediğinden, normalde sabitlerinizi belirli bir veri türü olarak bildirmek yararlıdır. Değişkenler gibi, sabitlerin de bir kapsamı vardır. Bir sabiti yerel bir sabit yapmak için Sub veya Function deyiminden sonra bildirilmesi gerekmektedir. Bir çalışma kitabındaki tüm modüller için bir sabiti kullanılabilir hale getirmek için, sabitin bir modüldeki ilk yordamdan önce “Public” anahtar sözcüğü kullanılarak bildirilmesi gerekir.
Excel ve VBA’da Önceden Tanımlanmış Sabitleri Kullanmak
Excel ve VBA, bildirmeden kullanabileceğiniz önceden tanımlanmış birçok sabit içerir. Bu sabitleri kullanmak için değerlerini bilmenize gerek yoktur. Genellikle sabitlerin isimleri yeterince açıklayıcıdır. Excel’de Makro Kaydedici genellikle gerçek değerler yerine sabitleri kullanır.
VBE’de program yazarken eğer Tools → Options diyalog kutusunda Auto List Members seçeneği açıksa, kodunuzu girerken genellikle yardım alabilirsiniz. Yordamınızda bir VBA sabiti kullanacağınız konumdayken VBA ifadesini yazdıktan sonra nokta işaretini (.) eklediğinizde VBA’da yerleşik işlevlerin, altyordamların ve sabitlerin listesi gelir. Çoğu durumda VBA, bir özelliğe atayabileceğiniz tüm sabitleri listeler. Bu listeden tercihinizi seçerek sabitin isminin kodunuza VBE tarafından eklenmesini sağlayabilirsiniz. VBE’de F2 tuşuna basarak açılan Nesne Tarayıcısını kullanarak Excel ve VBA’da bulunan önceden tanımlı tüm sabitleri listeleyerek inceleyebilirsiniz.
VBA’da Diğer Veri Yapıları
Diziler
Dizi, ortak bir ada sahip aynı türdeki ögeler grubudur. Dizi adını ve dizin numarasını kullanarak dizideki belirli bir ögeye atıfta bulunulabilir. Dizin numarası dizideki ögenin sıra numarasıdır.
Dizileri Bildirme
Tıpkı normal bir değişkeni bildirdiğiniz gibi bir diziyi de Dim veya Public deyimiyle bildirirsiniz.
Dizilerde dizinin indislerinin aldığı en alt ve en üst değerlerini bulabilmek için LBound ve UBound yerleşik işlevleri kullanılabilir.
Çok Boyutlu Dizileri Bildirme
İki boyutlu dizideki belirli bir ögeye atıfta bulunmak için iki dizin numarası da belirtmeniz gerekir. Üç boyutlu dizideki bir ögeye üç dizin numarası da belirtilerek atıf yapılabilir. VBA dizileri en fazla 60 boyuta sahip olabilir ancak nadiren üçten fazla boyuta ihtiyaç duyulur
Dinamik Dizileri Tanımlama
Dinamik bir dizide önceden ayarlanmış öge sayısı yoktur. Dinamik bir dizi boş bir parantez kümesiyle tanımlanır:
Kodunuzda dinamik bir dizi kullanmadan önce VBA’ya dizide kaç öge olduğunu söylemek için diziye değer atamadan önceki bir satırda ReDim deyimini kullanılmalıdır. Mevcut değerleri korumak istiyorsanız, ReDim Preserve deyimi kullanılmalıdır.
Nesne Değişkenleri
Nesne değişkeni, bir Range veya Worksheet gibi bir Excel nesnesinin ya da VBA içinde geliştirici tarafından oluşturulmuş bir nesnenin tamamını temsil eden değişkendir.
Kullanıcı Tanımlı Veri Türleri
VBA, özel veya kullanıcı tanımlı veri türleri oluşturmanıza olanak tanır. Kullanıcı tanımlı bir veri türü, karmaşık veri türleriyle çalışmanızı kolaylaştırabilir.
VBA’da Yerleşik İşlevler
MsgBox ve InputBox birer hazır VBA işlevidir. Hazır VBA işlevlerinin çoğu Excel çalışma sayfasında kullandığınız Excel işlevlerine benzer veya aynıdır. VBA’nın Sqr işlevi, Excel SQRT (Türkçe sürümde KAREKÖK) çalışma sayfası işlevine eş değerdir.
VBE’de kodunuzu yazarken VBA ve ardından bir nokta işareti (.) yazdığınızda yerleşik VBA işlevleri kendiliğinden listelenir. Bu özellik çalışmıyorsa, VBE menüsünde Tools à Options diyalog kutusunu açarak Editor sekmesine tıklayın ve Auto List Members’in yanına bir onay işareti koyun.
Application nesnesinde yer alan WorksheetFunction nesnesi, VBA yordamlarından çağırabileceğiniz tüm çalışma sayfası işlevlerini içerir. Bir çalışma sayfası işlevini bir VBA deyiminde kullanmak için, yordamınızda işlev adının önüne aşağıdaki ifade konulmalıdır.
Application.WorksheetFunction
Bu ifade yazıldıktan sonra bir nokta işareti (.) eklediğinde Excel çalışma sayfası işlevlerinin bir listesi görüntülenir.
Önemli Not: Kitabınız sayfa 45’ten itibaren konu ile ilgili verilen örnekleri incelemeniz ve uygulamanız önerilir.