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.
Dosya Yolu Problemi
Köprü yerine aşağıdaki kodu kullanabilirsiniz.
Kodu metin kutusunun tıklandığında olayına yazın.
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.
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
Konuyu Okuyanlar: 1 Ziyaretçi