Kapalı dosyadan sayfa adını listboxa almak

ikikan

Altın Üye
Katılım
3 Mart 2009
Mesajlar
517
Excel Vers. ve Dili
excel 2003 tr
Altın Üyelik Bitiş Tarihi
12.02.2026
Arkadaşlar bu koddaki hata nedir listboxa veriyi alıyor ama garip karakterler koyuyor ve sıralı almıyor?

Sub VERİAL1()

'On Error Resume Next
'Dim Katalog As Object, Data As Object, Tablo As Object
'Dim son1, Dosya_Yolu

klasör = ThisWorkbook.Path
Dosya_Yolu = klasör & "\" & "VRDATA.xlsb"

Sheets("HES").ListBox1.Clear

Set Data = CreateObject("ADODB.Connection")
Set Katalog = CreateObject("ADOX.Catalog")


Data.Open "Provider=Microsoft.ACE.OLEDB.12.0;" & "Data Source=" & Dosya_Yolu & ";Extended Properties=""Excel 12.0;HDR=yes""" 'ofis 2007
Katalog.ActiveConnection = Data


Dim x
For x = 0 To 20
Sheets("HES").ListBox1.AddItem Katalog(x).Name
Next



Set Data = Nothing
Set Katalog = Nothing

Call KONUMLAR1

End Sub
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,786
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
Alternatif kod:

Kod:
Sub VERİAL1()

klasör = ThisWorkbook.Path
Dosya_Yolu = klasör & "\" & "VRDATA.xlsb"

Dim Katalog As Object, Data As Object, Tablo As Object
Dim son1
Set Data = CreateObject("ADODB.Connection")
Set Katalog = CreateObject("ADOX.Catalog")

Data.Open "Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};Dbq=" & Dosya_Yolu & ";"
Katalog.ActiveConnection = Data
For Each Tablo In Katalog.Tables
'MsgBox Tablo.Name
If InStr(1, Tablo.Type, "TABLE") > 0 Then
If Right(Tablo.Name, 19) <> "kaynağından_sorgula" Then
If Right(Tablo.Name, 14) <> "Yazdırma_Alanı" Then
son1 = Replace(Tablo.Name, "'", "")
If Right(son1, 1) <> "_" Then
If Right(son1, 1) = "$" Then
sat1 = Val(ListBox1.ListCount)
ListBox1.AddItem
ListBox1.List(sat1, 0) = Left$(son1, Len(son1) - 1)
End If
End If
End If
End If
End If
Next
Set Data = Nothing
Set Katalog = Nothing
Call KONUMLAR1
End Sub
 

ikikan

Altın Üye
Katılım
3 Mart 2009
Mesajlar
517
Excel Vers. ve Dili
excel 2003 tr
Altın Üyelik Bitiş Tarihi
12.02.2026
Halit bey neden kapalı dosyadaki sıraya göre almıyor ?
 

ikikan

Altın Üye
Katılım
3 Mart 2009
Mesajlar
517
Excel Vers. ve Dili
excel 2003 tr
Altın Üyelik Bitiş Tarihi
12.02.2026
Halit bey ç.dışı görünüyor. Sorunuzun cavabı ise;

ADO ile dosyayı fiziksel olarak açmadan alınacak sayfa listesi alfabetiktir.
Zeki Bey ilginize teşekürler fakat alfabetikte almıyor? sebebi nedir acaba?
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,786
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
Zeki Bey ilginize teşekürler fakat alfabetikte almıyor? sebebi nedir acaba?
Sayfa isimleri alfabedik gelir eğer türkçe karekter veya sayısal değerlerle sayfa ismi varsa farklılık olabilir.

Alfabetik sayfaları gelmeyen dosyayı veri olmayacak şekilde sadece sayfa isimleri olacak şekilde ekleyin bir bakalım.
 
Üst