MS Access Veritabanları, VBA ve SQL Kullanımı

Microsoft Access'e dair herşey...

Access Menülerinin Tanıtımı-3

GENEL BİLGİLER

ACCESS MENÜLERİNİN TANITIMI (3.Bölüm)
Bağlı Tablo Yöneticisi / Metin

Arkadaşlar Merhaba,
Geçen makalemizde MS Access veritabanımızda dış ortamda bulunan Excel dosyasına bağlantı yapmıştık, bu makalemizde de bir metin dosyasına bağlantı yapacağız. Metin dosyamızın içeriği aşağıdaki gibidir.


access menüleri

Evet gördüğünüz gibi ilk satır başlıkları içeriyor. Veriler ise virgülle birbirinden ayrılmış durumda.


access menüleri

Şekilde görüldüğü gibi Metin Dosyası komutuna tıklıyoruz.


access menüleri

Arkadaşlar bu ekranda Gözat butonu ile alınacak metin dosyasını seçiyoruz ve Aşağıdaki 3 seçenekten en alttakini yani Bağlı tablo oluşturarak veri kaynağına bağla. seçeneğini seçip Tamam butonuna tıklıyoruz. Daha sonra aşağıdaki ekranla karşılaşıyoruz.


access menüleri

Burada bizim metin dosyasında veriler virgülle ayrıldığı için 1. seçeneği yani Sınırlandırılmış-Virgül veya sekme gibi karakterler alanlar ayırır. seçeneğini seçip İleri diyoruz.


access menüleri

Yukarıda 1 Nolu alanda alanlar arasında hangi karakterin bulunduğunu belirtiyoruz. Bizim metin dosyasında alanlar virgülle ayrıldığı için virgül olarak işaretliyoruz. Bu işlemimiz başarılı olmayacak, sebebini ilerleyen kısımda açıklayacağım.


access menüleri

Bu ekranda Alan adı ve veri türlerini belirleyebiliriz. Şimdi altta bulunana Gelişmiş komut düğmesine var Bu kısmı açıklamadan önce bağlama işine devam edelim bakalım karşımıza ne çıkacak.

access menüleri

Burada tablomuza bir isim veriyoruz. Ben MetinTest ismini verdim. ve Son düğmesini tıklıyorum. O da ne karşıma bağlantının başarısız olduğunu gösteren bir mesaj çıktı.


access menüleri

Evet arkadaşlar bu hata nereden kaynaklanıyor. Bu hata metinler arasında kullandığımız Virgül karakterinden kaynaklanıyor yani bir tür çakışma diyebiliriz. Çünkü Virgül karakteri sistemde Ondalık Ayıracı olarak görev yapıyor. Dolayısıyla ne yapmamız gerekiyor. Bu durumda önümüzde 2 seçenek bulunuyor.

1.Seçenek: Metin dosyamızın içinde Virgül karakterlerini başka bir simgeyle değiştiriyoruz.

2.Seçenek ise: 2 ekran önce Gelişmiş butonu vardı geri giderek gelişmiş butonuna tıklıyoruz.


access menüleri

Buradan Ondalık Simge olan Virgül karakterini nokta ile değiştiriyoruz. Bu işlemleri yaptıktan sonra tekrar ileri deyip tablomuzu bağlıyoruz. Ekrana Bağlantının başarılı olduğunu bildiren bir mesajla karşılaşıyoruz.


access menüleri

Aşağıda bağladığımız Metin dosyasının tablo şekli görülüyor.


access menüleri

Daha öncede söylediğim gibi arkadaşlar bu tablolar üzerinde değişiklik yapamıyorsunuz, değişiklik yapmak istiyorsanız kaynak dosyalardan yapmalısınız.

Bir Metin Dosyasından Veri Alan VBA Fonksiyon Kodu
Function TextDosyaAktar()
Dim fDialog As Office.FileDialog
Dim varFile As Variant
Dim DosyaSec As String
Set fDialog = Application.FileDialog(msoFileDialogFilePicker)
        With fDialog
                .AllowMultiSelect = True
                .Title = "Liste içeren txt dosyası seçin"
                .Filters.Clear
                .Filters.Add "Not Defteri Dosyaları", "*.txt"
                .Filters.Add "All Files", "*.*"
If .Show = True Then
    For Each varFile In .SelectedItems
    DosyaSec = varFile
    DoCmd.TransferText transfertype:=acImportFixed, _
        specificationname:="Table1 Import Specification", _
        tablename:="Friends", _
        filename:=DosyaSec, _
        hasfieldnames:=False

Next

If Err.Number = 2501 Then
MsgBox " Kullanıcı tarafından İptal edildi.", vbInformation, "accessapplication.blogspot.com"
Else
End If
      Else
         MsgBox "Dosya Seçme İşlemi İptal edildi."
      End If
   End With

MsgBox "Dosya aktarım işlemi başarıyla tamamlandı...", vbInformation, "accessapplication.blogspot.com"
End Function

Kullanımı:
Herhangi bir kout düğmesinin Click Olayına;
Call TextDosyaAktar
yazmanız yeterli olacaktır.
Evet arkadaşlar bugünkü makalemizinde sonuna geldik. Gelecek makalemizde Access menülerinin tanıtımı konusundan,  bağladığımız tablolarda bir değişiklik yapıldıysa bunları nasıl güncelleştireceğiz. onu öğreneceğiz.


Yorum Gönder

0 Yorumlar