• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Ağdaki bir excel dosyadan veri okuma

Katılım
16 Mart 2021
Mesajlar
41
Excel Vers. ve Dili
365excel
aynı ağda laptop ve desktop 2 pc var. Desktop ta çalışan bir excel hücresini Laptopa nasıl çağırabilirim. Örnek; Dekstop ta çalışan A1hücresi dışardan sürekli veri geliyor sürekli değişiyor bunu laptoptaki excel hücreme eş zamanlı nasıl okuyabilirim;
Desktoptaki A1=Laptoptaki A1 olacak eş zamanlı
 
Ağdaki dosyanızı laptop üzerinden açabiliyor musunuz?
 
Yazdıklarınızdan birşey anlamadım...

Sorum gayet netti.

Laptoptan boş bir excel dosyası üzerinden ağdaki bahsettiğiniz dosyayı açabiliyor musunuz?
 
O zaman Laptoptaki dosyanızda A1 hücresine = dedikten sonra diğer dosyayı geçip A1 hücresini seçerseniz bağlantı kurmuş olursunuz. Bu yöntem sanırım işinizi görecektir.
 
O zaman Laptoptaki dosyanızda A1 hücresine = dedikten sonra diğer dosyayı geçip A1 hücresini seçerseniz bağlantı kurmuş olursunuz. Bu yöntem sanırım işinizi görecektir.
@korhan Hocam bu yöntemle ağdaki dosyamın kaydedildiği son halini çekiyorum fakat ağdaki dosya çalışırken saniyelik değiştiği için benimde sürekli değişen hücre verisine ihtiyacım var.
 
Peki ağdaki dosyayı her değişimden sonra kaydettirseniz sorun çözülmez mi?
 
Saniyelik veri güncelleme işlemini nasıl yapıyorsunuz?
 
Tamam o zaman makronun son satırına aşağıdaki kodu ekleyip deneyiniz. Umarım olumlu sonuç alırsınız.

ActiveWorkbook.Save
 
Saniye durumunu arttırma şansınız varsa onu deneyiniz. Kaydetme anında tekrar veri çekmeye çalışıyorsa çakışmaya sebep oluyordur.

Örnek veri çekme süresini 10 saniye olarak ayarlayıp deneyiniz.
 
Veriye anlık ihtiyacım var maalesef ve süreyi arttırsam da aynı hatayı alıyorum
 
Kendi ağımızda bir dosya oluşturdum.

Dosyada her saniyede A1 hücresine sayı üreten bir kod yazdım. Sürekli çalışıyor ve rastgele sayılar üretiyor. Sonra dosyayı kaydediyor.

Bu aşamadan sonra aşağıdaki kod ile kendi bilgisayarımdan ilgili dosyadan saniyelik verileri çekmeye çalıştım.

Ado açık dosyada sağlıklı çalışmadığı için dosyayı anlık kendi dosyamın bulunduğu klasöre kopyaladıktan sonra verileri çekebilmeyi sağladım.

Tabi bu işlemler aşamasında belli bir süre geçtiği için ne kadar anlık denilebilir bilemiyorum. Belki sizde denemek istersiniz.

Do-Loop döngüsü sürekli çalıştığı için donma sorunu yaşayabilirsiniz. Bilginiz olsun..

C++:
Option Explicit

Sub Import_Data()
    Dim My_Connection As Object, My_Recordset As Object, File_Name As String, My_File As String

    Do
        DoEvents
       
        Set My_Connection = VBA.CreateObject("AdoDb.Connection")
       
        File_Name = "Deneme.xlsm"
       
        My_File = "\\10.10.10\Desktop\" & File_Name
       
        VBA.CreateObject("Scripting.FileSystemObject").CopyFile My_File, ThisWorkbook.Path & "\" & File_Name
       
        My_Connection.Open "Provider=Microsoft.Ace.OleDb.12.0;Data Source=" & _
        ThisWorkbook.Path & "\" & File_Name & ";Extended Properties=""Excel 12.0;Hdr=No"""
        
        Set My_Recordset = My_Connection.Execute("Select * From [Sayfa1$A1:A1]")
       
        Range("A1").CopyFromRecordset My_Recordset
       
        If My_Connection.State <> 0 Then My_Connection.Close
       
        Set My_Connection = Nothing
        Set My_Recordset = Nothing
       
        Application.Wait Now + TimeSerial(0, 0, 1)
    Loop
End Sub
 
Geri
Üst