Excel Forum

Excel Forum (http://www.excel.web.tr/index.php)
-   Access Dersanesi (http://www.excel.web.tr/forumdisplay.php?f=171)
-   -   WITH - END WITH Yapısı (http://www.excel.web.tr/showthread.php?t=100387)

Taruz 19-05-2011 21:29

WITH - END WITH Yapısı
 
GİRİŞ

Access ile hazırladığımız uygulamalarımızda yapmak istediklerimiz arttıkça artık menülerin, sihirbazların, makroların yetersiz kaldığını hissederiz.. Ama biz uygulamalarımızın daha özgün, esnek ve de kullanışlı olmasını istiyoruz.. Bu da demektir ki artık ufak ufak kod yazmayı öğrenmenin zamanı gelmiştir..





Merhaba arkadaşlar..

With yapısı kısaca, aynı koleksiyona ait komut yapılarını kullanarak hazırladığımız kodları kısaltmamızı sağlar.. Ayrıca bu yapıyı uyguladığımız komutlarımızın daha hızlı çalıştığını göreceksiniz..

Kullanımı basit ve de karışık kod bloklarımızı sadeleştiren bu yapının uygulanışına bir örnek vereyim..:

Diyelim ki şöyle bir kod bloğumuz var..:


Kod:

DoCmd.Maximize
DoCmd.OpenForm "form1"
DoCmd.GoToRecord , , acNewRec
DoCmd.GoToControl "metin1"
DoCmd.Requery
DoCmd.Close


İnsan, Docmd yazmaktan sivilce çıkartır..

İşte with burada imdada yetişir ve pürüzsüz bir cilt sağlar.. ;)


Kod:

With DoCmd
    .Maximize
    .OpenForm "form1"
    .GoToRecord , , acNewRec
    .GoToControl "metin1"
    .Requery
    .Close
End With




Bu da başka bir örnek..

With den Önce..

Kod:


Metin1.SetFocus
Metin1.Text = "trz 2011"
Metin1.FontBold = True
Metin1.FontSize = 25
Metin1.ForeColor = vbRed
Metin1.Width = 3000
Metin1.Height = 500



With den Sonra..


Kod:

With Metin1
    .SetFocus
    .Text = "trz 2011"
    .FontBold = True
    .FontSize = 25
    .ForeColor = vbRed
    .Width = 3000
    .Height = 500
End With



With esnektir.. İçerisinde karar yapıları da kullanabiliriz.. İf Then Else ile bir örnek..:


Kod:

With Metin1
    .SetFocus
    .Text = "trz 2011"
    .FontBold = True
        If Metin2 = "büyük" Then
            .FontSize = 25
        Else
            .FontSize = 12
        End If
    .ForeColor = vbRed
    .Width = 3000
    .Height = 500
End With



Taruz... 2011

Yakut 21-05-2011 01:05

sayin taruz ,

tesekkürler

döngülerle de güzel aciklayici yaziniz var mi ?

Taruz 21-05-2011 01:34

Merhaba sayın Yakut..

Access ile kod yazma konusunu yeni işlemeye başladım.. Döngülerle ilgili yazılarım da olacaktır.. Yine bu sayfalarda paylaşacağım..

abkbek 12-06-2011 22:20

sayın Taruz paylaşımınız için teşekkürler


Saat 18:01

Powered by vBulletin Version 3.7.2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.