Docmd.transferspreadsheet Fonksiyon Olarak Çağırma

1 2 3 4 5 6 7 8 9 10 11 12 13
16/02/2020, 15:56

accessman

eklediğim sizin örneğe bu dediğiniz Dlookup  kısmını nasıl ekleriz
16/02/2020, 16:40

berduş

iyi de orada zaten kullanılmış
If Not IsNull(DLookup("Name", "MSysObjects", "Name='TmpTablo'")) Then DoCmd.DeleteObject acTable, "TmpTablo"
önce dosya var mı diye kontrol ediyor sonrada varsa siliyor. sizin yapmanız gereken silmek yerine kendi istediğiniz kodu yazmak.
16/02/2020, 17:17

accessman

teşekkürler şöyle yazdım

If Not IsNull(DLookup("Name", "MSysObjects", "Name='" & accessTableName & "'")) Then
        transferFromExcel = True
Else
        transferFromExcel = False
End If
16/02/2020, 20:22

feraz

Alttaki kod ile tablo adlarını bulup koşul ile karşılaştırabilirsiniz.




Dim adoRecSet As New ADODB.Recordset
            Set adoRecSet = CurrentProject.Connection.OpenSchema(adSchemaTables, Array(Empty, Empty, Empty, "TABLE"))
   
    Do While Not adoRecSet.EOF
      Debug.Print adoRecSet.Fields("TABLE_NAME").Value
        adoRecSet.MoveNext
    Loop
    adoRecSet.Close
     
    Set adoRecSet = Nothing
16/02/2020, 20:25

feraz

Dao ile kısa kıd vardı bulamadım.
16/02/2020, 20:43

berduş

yazdığınız kod çoklu tablo yada sorgu alırken işe yarayabilir ama burada tek tablonun daha doğrusu adı bilinen bir nesnenin varlığı kontrol edileceği için en kısası Dlookup yada DCount bence
1 2 3 4 5 6 7 8 9 10 11 12 13