- Katılım
- 25 Temmuz 2006
- Mesajlar
- 19
Merhaba,excel sayfasında isimlerini listelediğim dosyaları bir klasörde bulup başka bir klasöre kopyalayan bir makro yazdım. Fakat listede bulunup kaynak klasörde bulunmayan bir dosyaya geldiğinde on error komutu ile bulunamayan dosyaları ayrı bir sütunda listelemek istediğim zaman,bulamadığı ilk dosyayı listeye ekliyor yani düzgün çalışıyor, ikinci bulamadığı dosyada on error çalışmayıp filecopy satırında "file not found" hatasını veriyor. Yardımcı olursanız sevinirim.
Private Sub CommandButton3_Click()
Set s1 = Sheets("Resim")
k = 0
DosyaSayısı = Application.CountA(s1.Columns(2)) - 1
For i = 1 To DosyaSayısı
On Error GoTo 10
Source = TextBox1.Text & "\" & s1.Cells(i + 4, 2) & ".tif"
Target = TextBox2.Text & "\" & s1.Cells(i + 4, 2) & ".tif"
FileCopy Source, Target
k = k + 1
yuzde = Round((k / DosyaSayısı) * 100, 0)
s1.Cells(2, 9).Value = "%" & yuzde & " kopyalandı"
GoTo 20
10 BDosyaSayısı = Application.CountA(s1.Columns(4))
s1.Cells(i + 2 + BDosyaSayısı, 4) = s1.Cells(i + 4, 2)
20 Next i
s1.Cells(2, 9).Value = BDosyaSayısı & " dosya bulunamadı"
End Sub
Private Sub CommandButton3_Click()
Set s1 = Sheets("Resim")
k = 0
DosyaSayısı = Application.CountA(s1.Columns(2)) - 1
For i = 1 To DosyaSayısı
On Error GoTo 10
Source = TextBox1.Text & "\" & s1.Cells(i + 4, 2) & ".tif"
Target = TextBox2.Text & "\" & s1.Cells(i + 4, 2) & ".tif"
FileCopy Source, Target
k = k + 1
yuzde = Round((k / DosyaSayısı) * 100, 0)
s1.Cells(2, 9).Value = "%" & yuzde & " kopyalandı"
GoTo 20
10 BDosyaSayısı = Application.CountA(s1.Columns(4))
s1.Cells(i + 2 + BDosyaSayısı, 4) = s1.Cells(i + 4, 2)
20 Next i
s1.Cells(2, 9).Value = BDosyaSayısı & " dosya bulunamadı"
End Sub