(29/02/2024, 10:46)atoykan yazdı: [ -> ]Makro içeren Excel dosyası (.xlsm) olarak kaydetmez .xlsx olarak kaydetmeye devam ederseniz kodları kaydederken ihmal eder.
Tekrar ben;
Başta 2 plaka dosyada pdf hali olmasına rağmen yok değil,
[img]
[/img]
acaba sebebi ne olabilir.
Örneğinizde belge yolunu köprü olarak formüle ederek oluşturup alternatif metin olarak sonuç döndürmüşsünüz. Ben örneğinizi incelememiş Sayın @
onur_can 'ın verdiği destek çerçevesinde kodu genel yapıya uyarlamıştım. Alternatif metin dosya yolunu içermiyor o yüzden hata alıyorsunuz, ayrıca Open işleminde Excel'de bazen sorun çaıkartabiliyor onu atlamışım onun yerine Dir kullanılabilir.
Bu hali ile deneyin sorununuz çözülmüş olur
Dim ws As Worksheet, LastRow As Long, i As Long
Set ws = ThisWorkbook.Sheets("Sayfa1") ' Çalışmak istediğiniz sayfa adı
LastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row ' Son kullanılan satır
For i = 2 To LastRow ' Başlıkların olduğu ilk satırı atlar
BelgeYolu = "C:\.........\Belge Getirmek\Belge\" & ws.Cells(i, 3).Value & ".pdf" 'dosya yolunu kendi çalışmanıza göre düzenleyin
If Len(BelgeYolu) > 0 Then ' Belge sütunu boş değilse
If Dir(BelgeYolu) <> "" Then
ws.Cells(i, 4).Value = "Var"
Else
ws.Cells(i, 4).Value = "Yok"
End If
Else
ws.Cells(i, 4).Value = "Yok"
End If
Next i
(29/02/2024, 12:49)atoykan yazdı: [ -> ]Örneğinizde belge yolunu köprü olarak formüle ederek oluşturup alternatif metin olarak sonuç döndürmüşsünüz. Ben örneğinizi incelememiş Sayın @onur_can 'ın verdiği destek çerçevesinde kodu genel yapıya uyarlamıştım. Alternatif metin dosya yolunu içermiyor o yüzden hata alıyorsunuz, ayrıca Open işleminde Excel'de bazen sorun çaıkartabiliyor onu atlamışım onun yerine Dir kullanılabilir.
Bu hali ile deneyin sorununuz çözülmüş olur
Dim ws As Worksheet, LastRow As Long, i As Long
Set ws = ThisWorkbook.Sheets("Sayfa1") ' Çalışmak istediğiniz sayfa adı
LastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row ' Son kullanılan satır
For i = 2 To LastRow ' Başlıkların olduğu ilk satırı atlar
BelgeYolu = "C:\.........\Belge Getirmek\Belge\" & ws.Cells(i, 3).Value & ".pdf" 'dosya yolunu kendi çalışmanıza göre düzenleyin
If Len(BelgeYolu) > 0 Then ' Belge sütunu boş değilse
If Dir(BelgeYolu) <> "" Then
ws.Cells(i, 4).Value = "Var"
Else
ws.Cells(i, 4).Value = "Yok"
End If
Else
ws.Cells(i, 4).Value = "Yok"
End If
Next i
Var olun, çok teşekkür ederim. Emeğinize sağlık...