Ms Project Makroları
Ms Project’de bize işlem kolaylığı sağlayan konulardan bir tanesi de makrolardır.
İki tip kullanım şekli vardır.
- Yaptığımız sıralı işlemleri tek tuşla gerçekleştirmek
- Özel Visual Basic Makrolarını Ms Project’e yüklemek.
Record Macro
Birden fazla aşamayla ilerlenen bir işlem düşünelim. Mesela bu size özel bir raporun çalıştırılması olabilir. Bunun için rapor kaydetmeyi de kullanabilirsiniz ama rapor kaydetseniz bile yine raporlara tıklayıp, kayıt ettiğiniz raporu seçip, gün aralığını belirlemek gibi sıralı bazı işlemleri takip etmeniz gerekiyor.
İlk öncül olarak Developer – Record Macro’ya tıklanır (Developer Tab’ı siz de açık değilse Options – Customize Ribbon Bar’dan aktif hale getirebilirsiniz).
Sonra ardıl olarak bu işlemleri yaparak Stop Recording deyin.
Makrolarla çalışmak oldukça kolay dikkat edilmesi gereken şeyler ise yaptığınız tüm hareketleri kaydetmesi. Yani yalnızca ulaşmak istediğiniz aşamalarla ilgili bir makro kaydetmeniz daha sağlıklı olacaktır. Makro eğer yalnızca o iş programı içinde çalışsın istiyorsanız Global Project seçeneği yerine kendi projenizi seçmeniz gerekir. |
Visual Basic
Hazır paket yazılımlar için sürekli söylediğiniz şeylerden bir tanesi de bu yazılım bunu yapmıyor. Üstelik yapsaydı çok önemli problemlerimi çözecekti olabilir.
Ms Project’de de bu tarz problemlerle çokça karşılaşacaksınız. Ama Ms Project’in güzelliklerinden bir tanesi de Visual Basic kodları ile yazılımın içinde bazı şeyleri mümkün hale getirmesidir.
Örnek;
Ms Project içinde malzemelerden kaynaklanan maliyetleri yani Material Cost’u göstermeye çalışın. Göstermeniz oldukça zor. Ama Visual Basic ile Material Cost kolonunu sisteme dahil edebiliriz.
Visual Basic’de kod yazma Ms Project eğitiminin konusu değil fakat internette birçok kayıtlı kod var. Ve problemleriniz ya da talepleriniz için Ms Project’e yüklenmesi ve kullanılması oldukça kolay.
Developer – Visual Basic’e tıklayalım.
Sub MaterialsCost()
Dim Tsk As Task Dim Res As Resource Dim Assgn As Assignment For Each Tsk In ActiveProject.Tasks If Not Tsk Is Nothing Then Tsk.Cost1 = 0 For Each Assgn In Tsk.Assignments Set Res = ActiveProject.Resources(Assgn.ResourceID) If Res.Type = pjResourceTypeMaterial Then Tsk.Cost1 = Tsk.Cost1 + Assgn.Cost End If Next Assgn End If Next Tsk End Sub |
Kodumuzu code sekmesine yapıştıralım.
Visual Basic için Run Sub / User Form’a tıklayalım.
![]() Custom Fields’dan Material Cost kolonu açalım. Burada önemli nokta da kolonun adıdır. Çünkü Visual Basic kodundaki işlemler ile Ms Project’deki değerler kolon adıyla eşleşir.Önemli olan ikinci konu ise iş programınız ilerledikce kaynak cost’larınız, adetleriniz de sürekli değişecektir. Yapmanız gereken her hesaplamada Visual Basic editörünün içine girip tekrar koda Run işlemini yaptırmaktır.İşlemin sonunda Material Cost kolonu açılmasıyla birlikte bütçeleri otomatik olarak gelecektir. |