Listbox a network ten veri çekmek..

Katılım
4 Mayıs 2007
Mesajlar
234
Excel Vers. ve Dili
office 2007 64 bit
office 2010 64 bit
Altın Üyelik Bitiş Tarihi
14-09-2023
Sayın Hocalarım ve arkadaşlar.
Aşşagıdaki kodda çalıştıgım iş yerinde 2 tane bilgisayar kullanıyorum biri alt katta digeri üst katta üstkatta 2.PC de Paylaşıma açtıgım DOSYA2 klasorunun içindeki KİTAP2 isimli Excel kitabıdaki Sayfa 2 nin A4 den D100 e kadar olan bölümünü DETAY isimli Listbox a veriyi çekmek istiyorum çok denedim ama nerede hata yağtıgımı anlamıyorum. Bu Arada KİTAP2 isimli çalışma üst kattaki bilgisayarda hep açık konumdadır. yani açık olan sayfadan DETAY isimli Form açılınca veriyi çekmek istiyorum.
Private Sub UserForm_Initialize()
With Me
Me.Left = 357
Me.Width = 600
End With
DETAY.ColumnWidths = "100;140;70;70"
DETAY.RowSource = "\\2PC\DOSYA2[KiTAP2.xlsm]SAYFA2!a4:d100"

End Sub
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,243
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Bu şekilde işinize yararsa deneyiniz..

C++:
Private Sub UserForm_Initialize()
    Dim File_Path As String, My_File As Workbook, My_Sheet As Worksheet, Rng As Range

    File_Path = "\\Network_Path\Desktop\Book1.xlsx"
    Application.ScreenUpdating = False
    Set My_File = Workbooks.Open(File_Path)
    Set My_Sheet = My_File.Sheets("Sheet1")
    Set Rng = My_Sheet.Range("A2:D21")
    ListBox1.ColumnCount = 4
    ListBox1.List = Rng.Value
    My_File.Close False
    Application.ScreenUpdating = True
End Sub
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,243
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Bu da ado ile alternatif olsun..

C++:
Option Explicit

Private Sub UserForm_Initialize()
    Dim File_Path As String, My_Connection As Object, My_File As Variant, My_Recordset As Object

    File_Path = "\\Network_Path\Desktop\Book1.xlsx"
    
    Set My_Connection = CreateObject("AdoDb.Connection")

    Select Case Val(Application.Version)
        Case Is < 12
            My_Connection.Open "Provider=Microsoft.Jet.OleDb.4.0;Data Source=" & File_Path & ";Extended Properties=""Excel 8.0;Hdr=No"""
        Case Is > 11
            My_Connection.Open "Provider=Microsoft.Ace.OleDb.12.0;Data Source=" & File_Path & ";Extended Properties=""Excel 12.0 Xml;Hdr=No"""
    End Select

    Set My_Recordset = My_Connection.Execute("Select * From [Sheet1$A2:D]")
    
    ListBox1.ColumnCount = 4
    ListBox1.Column = My_Recordset.GetRows
  
    My_Recordset.Close
    My_Connection.Close

    Set My_Recordset = Nothing
    Set My_Connection = Nothing
End Sub
 
Katılım
4 Mayıs 2007
Mesajlar
234
Excel Vers. ve Dili
office 2007 64 bit
office 2010 64 bit
Altın Üyelik Bitiş Tarihi
14-09-2023
Sayın Korhan Ayhan Hocam çok saolun ikisi de oldu sayenizde yeni bir bilgidaha ögrendim emeklerinize saglık..
 
Üst