AccessTr.neT

Tam Versiyon: Dosya Yolu Problemi
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
Merhaba,

Ekli örneğimde, dosya yolu isimli bir köprü oluşturdum ve formda ilgili alan tıklanınca makro çalışıyor. Ancak eğer ekleyeceğim dosya ile Access dosyam aynı dizinde ise dosya yolu görünmüyor, direkt dosyanın adı görünüyor. Eğer ekleyeceğim dosya farklı bir harddiskte ise o zaman tam dosya yolu görünüyor. Ben istiyorum ki ekleyeceğim dosya nerede olursa olsun her zaman "tam dosya yolu" görünsün. (Ek dosya ve Access dosyası masaüstünde olsun mesela; C:\Users\fatih\desktop\ornek.excel gibi tam görünsün) Tşk.
Köprü yerine aşağıdaki kodu kullanabilirsiniz.

Dim vrtSelectedItem As Variant
Set DosyaBul = Application.FileDialog(msoFileDialogFilePicker)
With DosyaBul
   .AllowMultiSelect = False
   .ButtonName = "Dosya Seç"
   .Filters.Add "Hepsi", "*.*"
   .FilterIndex = 0
   .InitialView = msoFileDialogViewThumbnail
   .Title = "Seç..."
       If .Show = True Then
           For Each vrtSelectedItem In .SelectedItems
            Me.dosya_yolu = vrtSelectedItem
           Next vrtSelectedItem

 
       End If
End With

Kodu metin kutusunun tıklandığında olayına yazın.
Merhaba Ozan Bey,

Verdiğiniz kodlamanın 12. adımı hata veriyor. Bunu daha farklı şekilde, formumda bir gözat butonu oluşturarak çözdüm. Bu hali ile işimi görüyor. Tşk. Kodlarım aşağıdaki gibidir.

Kod:
Private Sub Komut24_Click()
Call Edit_Hyperlink
End Sub

Sub Edit_Hyperlink()
Dim ButonAdi As String, PencereBasligi As String
Dim BagliDosya As String, Dosya
Dim Yeri As String
ButonAdi = "Dosya Ekle"
PencereBasligi = "Köprü Olusturulacak Dosyayi Seç"
Yeri = "Application.FollowHyperlink \\" & Environ("computername") & "\"
With Application.FileDialog(msoFileDialogFilePicker)
With .Filters
.Clear
.Add "Tum Dosyalar", "*.*"
End With
.AllowMultiSelect = True
.FilterIndex = 1
.ButtonName = ButonAdi
.InitialFileName = vbNullString
.InitialView = msoFileDialogViewDetails
.Title = PencereBasligi
If .Show Then
For Each Dosya In .SelectedItems
BagliDosya = Left(Dosya, InStrRev(Dosya, "")) & "#" & Dosya
Me.[resim] = BagliDosya
Next Dosya
End If
End With
End Sub