Konu Araçları | Seçenekler: | Gösterim Stili
Tarih
30/06/2012 14:20
Konu Sahibi
gurcagy
Yorumlar
1
Okunma
2192
Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 5
  • 4
  • 3
  • 2
  • 1

Derecelendirme: 0/5 - 0 oy

gurcagy

Üye
Kullanici Avatari
Üye
1
1
30/06/2012
0
İstanbul
Belirtilmemiş
30/06/2012,14:22
Çözüldü 
MERHABA BİR Access PROJEM VAR. Excel IMPORT ETME BUTONU OLACAK VE KULLANICI BUTONA TIKLAYIP "İSTEDİĞİ Excel DOSYASINI" IMPORT EDECEK. BUNU FORM OLUŞTURARAK Vba İLE YAPACAĞIM GALİBA. YARDIMLARINIZ İÇİN ŞİMDİDEN TEŞEKKÜR EDİYORUM.


Cevapla

maytas

Aktif Üye
Kullanici Avatari
Aktif Üye
545
21/12/2008
173
Bursa
Ofis 2010 32 Bit
27/09/2015,02:03
Çözüldü 
Merhaba.
Eğer seçilecek Excel dosyası belli ise:

Visual Basic Code
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "Tablo_Adi", "Excel_Dosyasi_Yolu_ve_Adi", True


Seçilecek Excel dosyasını "Dosya Aç" dialog kutusu vasıtası ile seçmek için:

Visual Basic Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
Private Secilen As String
Private Declare Function GetOpenFileName Lib "comdlg32.dll" Alias "GetOpenFileNameA" (pOpenfilename As OpenFilename) As Long
Private Type OpenFilename
    lStructSize As Long
    hwndOwner As Long
    hInstance As Long
    lpstrFilter As String
    lpstrCustomFilter As String
    nMaxCustFilter As Long
    iFilterIndex As Long
    lpstrFile As String
    nMaxFile As Long
    lpstrFileTitle As String
    nMaxFileTitle As Long
    lpstrInitialDir As String
    lpstrTitle As String
    Flags As Long
    nFileOffset As Integer
    nFileExtension As Integer
    lpstrDefExt As String
    lCustData As Long
    lpfnHook As Long
    lpTemplateName As String
End Type

Private Function DosyaAcFonksiyonu() As String
    Dim Secilenin As OpenFilename
    Secilenin.lStructSize = Len(Secilenin)
    Secilenin.hwndOwner = hwnd
    Secilenin.lpstrFilter = "Excel Dosyaları (*.xls*)" & Chr$(0) & "*.xls" & Chr$(0) & Chr(0) & Chr(0)
    Secilenin.lpstrFile = String(256, 0)
    Secilenin.nMaxFile = 255
    Secilenin.lpstrTitle = "Dosya Aç"
    Secilenin.Flags = &H800000 + &H1000 + &H8 + &H4
    GetOpenFileName Secilenin
    If Mid(Secilenin.lpstrFile, 1, 1) <> Chr(0) Then DosyaAcFonksiyonu = Secilenin.lpstrFile
    Secilen = Secilenin.lpstrFile
End Function

Private Sub Komut0_Click()
    Dim Dosya As String
    Dosya = DosyaAcFonksiyonu
    If Dosya <> "" Then DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "Tablo_Adi", Dosya, True
End Sub


Yalnız her iki durumda da veri alınacak tablo adı belli olmalı.
Veri alınacak tablo Access veritabanında yok ise oluşturulur, var ise veriler veritabanına eklenir, yalnız alınacak Excel tablosundaki ve eklenecek veritabanındaki alan başlıkları farklı olmamalı, yoksa hata verir.


Mesajlarımızı Türkçe yazım kurallarına uygun yazalım.
Emeğe saygı gösterelim, bir teşekkürü çok görmeyelim.
resim
Cevapla


Konuyu Okuyanlar: 1 Ziyaretçi

Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Tarih Son Yorum
Çözüldü Döneme Göre Kayıt Etme haziran4 5 202 17/08/2017, 08:22 haziran4
Çözüldü Onay Kutusunu İşaretleyince Butonu Gösterme te-kin 6 389 14/08/2017, 19:44 te-kin
Çözüldü Toplu SMS Firmasının Kodlarını Access Veri Tabanına Entegre Etme tekinuygun 14 2.928 25/07/2017, 08:32 ozanakkaya
Çözüldü Access Den Excel Çıktısı Alma Sorunu estapan 13 902 30/05/2017, 14:12 atoz112
Çözüldü Excel Den Veri Alma 2003 estapan 9 497 30/05/2017, 11:59 estapan

Türkçe Çeviri: MCTR, Yazılım: MyBB, © 2002-2017 MyBB Group.
Forum use Krzysztof "Supryk" Supryczynski addons.