AccessTr.neT
Docmd.transferspreadsheet Fonksiyon Olarak Çağırma - Baskı Önizleme

+- AccessTr.neT (https://accesstr.net)
+-- Forum: Microsoft Access (https://accesstr.net/forum-microsoft-access.html)
+--- Forum: Access Cevaplanmış Soruları (https://accesstr.net/forum-access-cevaplanmis-sorulari.html)
+--- Konu Başlığı: Docmd.transferspreadsheet Fonksiyon Olarak Çağırma (/konu-docmd-transferspreadsheet-fonksiyon-olarak-cagirma.html)

Sayfalar: 1 2 3 4 5 6 7 8 9 10 11 12 13


Cvp: Docmd.transferspreadsheet Fonksiyon Olarak Çağırma - feraz - 16/02/2020

Evet berduş hocam o kodlar zaten mevcut lakin accessman hocamızın gönlü olsun yinede Img-grin


Cvp: Docmd.transferspreadsheet Fonksiyon Olarak Çağırma - berduş - 16/02/2020

konu çözümüne kavuştuysa taşıyalım mı cevaplanmışlara?


Cvp: Docmd.transferspreadsheet Fonksiyon Olarak Çağırma - accessman - 16/02/2020

eklediğim kodda Excel sayfa isimlerini buluyormuş galiba 
mesela birden fazla sayfayı ayrı ayrı tablolara alacak şekilde yapılabilir mi
5 sayfa varsa 5 ayrı tabloya nasıl aldırırız bakacak kaç sayfa varsa o kadar tablo yapacak


Cvp: Docmd.transferspreadsheet Fonksiyon Olarak Çağırma - berduş - 16/02/2020

https://accesstr.net/konu-excelden-veri-alma-excel-sayfasini-ice-aktarma.html
bağlantısını incelerseniz orada belli bir dosyada yer alan tüm sayfaları alan bir kod var işinize yarayabilir
Set db = OpenDatabase(txtDosyaAdres, True, True, "Excel 5.0")
Me.LstExcelSyf.RowSource = ""

For Each tbl In db.TableDefs
tblAdi = CStr(Replace(tbl.Name, "'", ""))
If Len(tblAdi) = InStr(tblAdi, "$") Then Tur = "Sayfa" Else Tur = "Alan"
Me.LstExcelSyf.AddItem Tur & ";" & tblAdi & ";" & Replace(tblAdi, "$", "")
Next
orada dosya seçme penceresinden ilgili dosya seçilip tüm sayfa ve alanlar liste kutusuna aktarılır
siz sadece sayfa türünde olanları liste kutusuna yada diziye aktararak yapabilirsiniz


Cvp: Docmd.transferspreadsheet Fonksiyon Olarak Çağırma - accessman - 16/02/2020

teşekkürler inceleyeceğim


Cvp: Docmd.transferspreadsheet Fonksiyon Olarak Çağırma - feraz - 16/02/2020

(16/02/2020, 16:40)berduş yazdı: 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.

Alttaki kod koşullu tablo adı buluyor anladığım.
Çok ilginçmiş.Standart olarak böyle arayabiliriz değil mi ?


DLookup("Name", "MSysObjects", "Name='TmpTablo'")