N Kadar CSV Dosyasını Access İçine Atmak - 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ığı: N Kadar CSV Dosyasını Access İçine Atmak (/konu-n-kadar-csv-dosyasini-access-icine-atmak.html) |
RE: N Kadar Excel Dosyasını Access İçine Atmak - berduş - 31/10/2020 Excelden veri almayla ilgili aşağıdaki bağlantıyı inceleyebilirsiniz Olmazsa yeni konu açın oradan devam edelim. RE: N Kadar Excel Dosyasını Access İçine Atmak - hakkih - 31/10/2020 yeni konu açmama gerek yok konu devamı kodlar böyle; rivate Sub BtnCSVAl_Click() Dim DosyaBul As Object Dim vrtSelectedItem As Variant Dim tblAdi, Tur As String Set DosyaBul = Application.FileDialog(3) With DosyaBul .AllowMultiSelect = True .ButtonName = "Dosya Seç" .InitialFileName = CurrentProject.Path .Filters.Clear .Filters.Add "CSV Dosyası", "*.xls" ' .Filters.Add "Excel", "*.xls,*.xlsx,*.xlsm,*.csv" .Filters.Add "Hepsi", "*.*" .FilterIndex = 0 .Title = "Seç..." If .Show = True Then For Each vrtSelectedItem In .SelectedItems DoCmd.TransferText acImportDelim, "CSVAktar", "Book1", vrtSelectedItem, True, "" Next vrtSelectedItem MsgBox "Kopyalama Bitti" Else MsgBox "Kopyalama iptal edildi" Exit Sub End If End With End Sub ------------------ .xls,*.xlsx,*.xlsm bu uzantıları almam gerekiyor ama bu kodlar sadece *.csv uzantı çalıştırıyor ve kolonların ver türleri tek metin, diğer veri türler sayı tarih para birimi gibi onlar ne olacak örnek ekleyecektim ama eklenecek yer yok ekleyemedim RE: N Kadar Excel Dosyasını Access İçine Atmak - berduş - 31/10/2020 aşağıdaki bağlantıda excelden veri alma yöntemi ayrıntılı olarak gösterilmiştir https://accesstr.net/konu-excelden-veri-alma-excel-sayfasini-ice-aktarma.html bu konu CSVden veri almayla ilgili yani bu konudan devam edemeyiz. RE: N Kadar CSV Dosyasını Access İçine Atmak - berduş - 31/10/2020 DoCmd.TransferSpreadsheet kodu ile exceldeki veriler accessteki tabloya aktarilabilir Eger tablo yoksa olusturulur varsa yeni veriler eklenir TransferSpreadsheet yöntemiyle ilgili genel bilgiler dilerim işinize yarar DoCmd.TransferSpreadsheet acLink, "Dosya türü excel/versiyonu", "hangi isimle bağlanacak", "tamAdresveAd", "Başlık var mı", "Hangi aralık" DoCmd.TransferSpreadsheet _ TransferType:=acImport, _ TableName:="TmpTablo", _ SpreadsheetType:=10, _ FileName:=yahya, _ HasfieldNames:=True, _ Range:="B3:E" '"Hy bin 2!B3:E" TransferType:= transfer türü İsim - Sayısal değer - Tanım acImport 0 Varsayılan değerdir, içeri aktatrır acExport 1 Başka dosyaya gönderir acLink 2 Başka dosyadaki veriye bağlantı sağlar TableName:="Hangi İsimle bağlanacak-acLink İse/hangi tabloya aktarılacak" SpreadsheetType:= tablo türü İsim Sayısal Değer Tanım acSpreadsheetTypeExcel3 0 Microsoft Excel 3.0 format acSpreadsheetTypeExcel4 6 Microsoft Excel 4.0 format acSpreadsheetTypeExcel5 5 Microsoft Excel 5.0 format acSpreadsheetTypeExcel7 5 Microsoft Excel 95 format acSpreadsheetTypeExcel8 8 Microsoft Excel 97 format acSpreadsheetTypeExcel9 8 Microsoft Excel 2000 format acSpreadsheetTypeExcel12 9 Microsoft Excel 2010 format acSpreadsheetTypeExcel12Xml 10 Microsoft Excel 2010/2013/2016 XML format (.xlsx, .xlsm, .xlsb) FileName:=Dosya yaolu ve adı "d:\deneme\erzak.xlsm" gibi HasfieldNames:=Satır başlığı var mı True(var)/False(yok) Range:=veri alınacak bölge "Hy bin 2!B3:E" --> "Hy bin 2" sayfasındaki "B3" ve "E" stunları arasındaki verileri al |