29/02/2024, 11:33
Dosya İçerisinde Var Mı Yok Mu?
 1 2 
 29/02/2024, 11:33
cdenktas
 29/02/2024, 12:49
atoykan
Ö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
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, 13:46
cdenktas
(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...
 1 2