Excel-2003 te çalışan kodlar 2007 de çalışmıyor

tamer42

Destek Ekibi
Destek Ekibi
Katılım
11 Mart 2005
Mesajlar
3,110
Excel Vers. ve Dili
Office 2013 İngilizce
Arkadaşlar Merhaba;

Aşaıdaki kodlar ile kapalı bir dosya içerisindeki sheet adlarını yazdırıyorum,

Yalnız bu kodlar Excel-2003 te sorunsuz çalışırken Excel-2007 de çalışmıyor, yani sheet adları gelmiyor.

Yardımlarınızı bekliyorum.

iyi çalışmalar.

Kod:
Function GetShNames(WBName As String) As Collection
    Dim objConn As ADODB.Connection
    Dim objCat As ADOX.Catalog
    Dim tbl As ADOX.Table
    Dim sConnString As String
    Dim sSheet As String
       
    Dim Col As New Collection
    
    On Error GoTo 20
    
    sConnString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
    "Data Source=" & WBName & ";" & _
    "Extended Properties=Excel 8.0;"
    Set objConn = New ADODB.Connection
    objConn.Open sConnString
    Set objCat = New ADOX.Catalog
    Set objCat.ActiveConnection = objConn
        For Each tbl In objCat.Tables
            sSheet = tbl.Name
            sSheet = Application.Substitute(sSheet, "'", "")
            sSheet = Left(sSheet, InStr(1, sSheet, "$", 1) - 1)
            On Error Resume Next
           Col.Add sSheet
            On Error GoTo 0
        Next tbl
        

        
    Set GetShNames = Col
    objConn.Close
    Set objCat = Nothing
    Set objConn = Nothing
    
20:
    
End Function
 
Üst