Formlar ve Raporlar için Kısayol Menüsü Hazırlama
Kısayol menüleri işlemleri hızlandırmak, çok kullanılan olayları tekrar etmek için formlarda, raporlarda ve butonların olaylarında kullanabiliriz. Kısayol menüsü hazırlamak aslında çok zor bir olay değildir. Sadece bir modül oluşturup bu modüle gerken menü kodlarını yazmamız ve sonra da kullanacağımız yerde bu modülü çağırmamız yeterli olacaktır. Şimdi isterseniz kısayol menüsü hazırlamak için gereken adımları atalım. Öncelikle veritabanında yeni bir modül ekleyelim. Modül ekledikten sonra kısayol menüsünde ihtiyaç duyacağımız işlemleri belirlememiz gerekiyor. Veritabanımızda Rapor1 ve Rapor2 adında 2 adet raporumuz bulunuyor. Bu raporlarımızı Baskı önizleme, PDF olarak kaydetme, Excel olarak kaydetme ve word olarak kaydetme işlemlerini yaptırabileceğimiz bir menü olacaktır.
- Rapor1 Baskı Önizleme
- Rapor2 Baskı Önizleme
- PDF Olarak Kaydet
- Excel Olarak Kaydet
- Word Olarak Kaydet
Sub Mn1()
DoCmd.OpenReport "Rapor1", acViewPreview
End Sub
2.İşlem için yazacağımız yordam;
Sub Mn2()
DoCmd.OpenReport "Rapor2", acViewPreview
End Sub
3.İşlem için yazacağımız yordam;
Sub Mn3()
DoCmd.OutputTo acOutputReport, "Rapor1", _
acFormatPDF, "D:\Rapor1.pdf"
End Sub
4.İşlem için yazacağımız yordam;
Sub Mn4()
DoCmd.OutputTo acOutputReport, "Rapor2", _
acFormatXLS, "D:\Rapor2.xls"
End Sub
5.İşlem için yazacağımız yordam;
Sub Mn5()
DoCmd.OutputTo acOutputReport, "Rapor2", _
acFormatRTF, "D:\Rapor2.rtf"
End Sub
Şimdi komutlarımız hazır olduğuna göre sıradaki işlemimiz bu komutlarımızı menü içerisine yerleştirmek. Bunun içinde bir prosedür oluşturuyoruz.
Sub MenuAc()
Dim Mnu As CommandBar, Itm As CommandBarControl
Set Mnu = CommandBars.Add("", msoBarPopup, , True)
Set Itm = Mnu.Controls.Add(msoControlButton, 109, , , True): Itm.Caption = "Rapor1 Baskı Önizleme": Itm.OnAction = "Mn1"
Set Itm = Mnu.Controls.Add(msoControlButton, 109, , , True): Itm.Caption = "Rapor2 Baskı Önizleme": Itm.OnAction = "Mn2"
Set Itm = Mnu.Controls.Add(msoControlButton, 166, , , True): Itm.Caption = "PDF Olarak Kaydet": Itm.OnAction = "Mn3"
Set Itm = Mnu.Controls.Add(msoControlButton, 263, , , True): Itm.Caption = "Excel Olarak Kaydet": Itm.OnAction = "Mn4"
Set Itm = Mnu.Controls.Add(msoControlButton, 42, , , True): Itm.Caption = "Word Olarak Kaydet": Itm.OnAction = "Mn5"
Mnu.ShowPopup
End Sub
Burada kullandığımız komut yapısını biraz açıklamak gerekirse,
109,166,263,42 sayısal veri komut düğmesinde görünecek resimdir. (Face ID olarakta adlandırılır)
Devem eden Tırnak içinde yazılan ise İşlem için kullanacağınız isimdir.
Mn1....Mn5 ise çağrılan işlemin prosedörüdür.
Şimdi kısayolu nasıl kullanacağız ona bakalım:
Formu veya raporu tasarım modunda açalım.
Kullanmak istediğimiz formun yada raporun özelliklerinden Kısayol Menüsünü Evet olarak ayarlayalım. Daha Sonra Kısayol menüsü kısmına MenuAc olarak ayarlayalım. Bundan sonra formu veya raporu çalıştırdığınızda Sağ tıklama yaptığınızda ilgili menü görünecektir.
0 Yorumlar