Fonksiyon İşleyişi

1 2 3
11/03/2020, 17:22

ozanakkaya

Sayın @accessman, şöyle bir soru sorayım. Eklediğiniz kod içerisindeki


On Error GoTo Err_hata
rq_Exit:
Exit_kod:
Err_hata:

şeklindeki kodlar, ne için yazılmış bilginiz veya fikriniz var mı acaba?
11/03/2020, 17:36

feraz

Alttaki gibi yaparsanız hata durumundada kapanır.
Zaten gereksiz hata kodlamaları eklenmiş fazladan.

Daha önce açtığınız bir konuda hata olayını açıklamıştım kısa yol nasıl oşur diye.


Exit_kod:
    writeExcel = result

  xlApp.Quit
    Exit Function
11/03/2020, 17:53

accessman

(11/03/2020, 17:22)ozanakkaya yazdı: Sayın @accessman, şöyle bir soru sorayım. Eklediğiniz kod içerisindeki


On Error GoTo Err_hata
rq_Exit:
Exit_kod:
Err_hata:

şeklindeki kodlar, ne için yazılmış bilginiz veya fikriniz var mı acaba?
ben el yordamıyla karanlıkta keşfetmeye çalışıyorum
siz ne kadar ışık tutarsanız o kadar daha fazla öğrenebilliyorum
bir kısmınıda zamana yenik düşerek unutuyorum
ama ferazın dediği gibi fazladan satırlar var galiba mesela
rq_exit neden konmuş anlamış değilim bilmeden bozmayayım diye kurcalayamıyorum
bu fonsiyon işini bir kafamda oturtabilsem heryerde copy paste yapıp kullanacağım
11/03/2020, 17:56

feraz

Siz bu kod ile ne yapmayı amaçlıyorsunuz.Ona göre çözüm bulabiliriz.
11/03/2020, 17:56

accessman

rq_Exit: altındaki kodları hepsini Exit_kod altına taşısam daha mı mantıklı olur
yapmak istediğim şu 
accessden kapalı Excel sayfasını doldurup çıktı almak
ama dosya bulunamasa veya açılamasa veya doldurulamasa veya kapatılamasa vs.
bütün durumlarda programı kilitlemeden exceli de kapatarak uygun bir mesajla hatayı bildirmesi
Şöyle sorayım Access kod satırlarında ilerler iken exit function cümlesine gelene kadar eğer goto ile by pass yapılmadı ise her satırı okuyup çalıştırıyor galiba 
Hata olduğunda err_hata ya gidiyor
Resume ile devam edeceği yere gidiyor değil mi
Bu eklediğim kodda rq_exit neden ayrılmış 
Exit kodun içinde neden değil
11/03/2020, 18:42

feraz

Telefondan alttaki gibi düzenleyebildim.


Private Function writeExcel() As Boolean

On Error GoTo Err_hata
 writeExcel = False
   
    Dim xlApp As Excel.Application
    Dim xlWB As Excel.Workbook
    Dim xlWS As Excel.Worksheet
    Dim acRng As Variant
    Dim xlRow As Integer
    Dim xlColumn As Integer


    Set xlApp = New Excel.Application
    Set xlWB = xlApp.Workbooks.Open(targetFullName)
    Set xlWS = xlWB.Worksheets("Sayfa2")
   
   
    xlWS.Range("G17").Formula = Nz(aktif_isim, ".")
    xlWS.Range("R17").Formula = Nz(aktif_sicil, ".")
    xlWS.Range("G18").Formula = Nz(aktif_tc, ".")
   
   
   
        Set xlWS = Nothing
        xlWB.Close acSaveYes
        Set xlWB = Nothing
        xlApp.Quit
        Set xlApp = Nothing
       
    writeExcel = true
    Exit Function

Err_hata:
   
      Set xlWS = Nothing
        xlWB.Close False
        Set xlWB = Nothing

       writeExcel = False
        xlApp.Quit
        Set xlApp = Nothing
End Function
1 2 3