"İşlem zaman aşımına uğradı"

Katılım
14 Mayıs 2021
Mesajlar
15
Excel Vers. ve Dili
2016 / Türkçe
Merhaba üstatlarım,

İşin içinden çıkamadığım tuhaf bir sorunum var.

Excel 2016 versiyonunu kullanıyorum. Çok basit bir dosya oluşturdum. Borsanın api'si ile veri alıyorum. Bu kadar. Sorgu özellikleri kısmında, en az 1 dakika süre ile veri güncellemesi yapılabildiği için, daha az sürelerde güncelleme yapılamadığı için, mecburen aşağıdaki gibi bir kod kullanıyorum.

Kod:
Option Explicit
Dim zaman As Date

Sub Guncelle()

zaman = Now + TimeValue("00:00:10")

Application.OnTime zaman, "Guncelle"

    Dim Connection As WorkbookConnection
    For Each Connection In ThisWorkbook.Connections
        Connection.Refresh
    Next Connection
Kodu çalıştırmaya başladıktan sonra benim belirlediğim zaman aralığında (örneğin yukarıdaki örnekte 10 saniyede bir) veriler sorunsuz bir şekilde güncelleniyor. Ancak birkaç saat sonra, ne oluyorsa oluyor, Excel şöyle bir uyarı veriyor ve çalışan kodlar duruyor: "Hata: İşlem zaman aşımına uğradı."

Bununla ilgili Google'da şöyle bir sayfa buldum: https://support.microsoft.com/en-us/office/sessions-and-session-time-outs-in-a-workbook-in-the-browser-74938c0d-9652-4f10-b87c-1a7682540dfb

Sanırım burada diyor ki, "kodun çalışmaya devam edebilmesi için kullanıcının Office programı ile etkileşimde kalmaya devam etmesi lazım." Yani fare tıklaması, klavyeden veri girişi gibi interaktif durumlar devam etmeyince Excel bir süre sonra böyle bir hata veriyor anladığım kadarıyla.

Peki diyelim ki ben dosyanın "ne olursa olsun" 24 saat boyunca kesintisiz olarak çalışmasını istiyorum. Diyelim ki sürekli bilgisayarın başında durmak istemiyorum. Bilgisayar açıkken evden çıkayım, dışarıda işlerimi halledeyim, ama bu arada kodların çalıştığından da emin olayım. Bunu nasıl yapabilirim?

Aklıma AutoIt benzeri klavye-mouse macro programları geldi. Ancak buna benzer harici çözümler bulmaya çalışmak yerine belki bu sorun Excel'in kendi içinde çözülebilir diye düşünerek size danışmak istedim.
 
Üst