klasor altindaki dosyalari baska klasore tasima

Katılım
6 Ekim 2004
Mesajlar
250
Excel Vers. ve Dili
MSOffice 2010 TR
Altın Üyelik Bitiş Tarihi
19-11-2020
Merhaba arkadaslar, konudanda anlasilacagi gibi butun derdim budur belirtigim bir yoldaki orn: C:\Documents and Settings\volkan\Belgelerim\Alınan Dosyalarım\ifadeler altindaki dosyalari kopyalayip belirtigim baska bir yoldaki klasorun altina atmasi. Eger butun formatlar icin sorun oluyorsa sadece not defteri formatindakileride kopyalasa olur.

yalniz makro bunu yaparken bu klasorleri acmasin VE kopyaladigi dosyalari silmesin ben onlari asagidaki gibi bir kodla siliyorum.

Sub eskiarsivisil()
ChDir ("C:\Documents and Settings\.................")
Kill ("*.*")
Dim fs, f, f1, s, sf
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFolder("C:\Documents and Settings\.............")
Set sf = f.SubFolders
For Each f1 In sf
f1.Delete
Next
Set fs = Nothing
Set f = Nothing
Set sf = Nothing
End Sub




tesekkurler,
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Kod:
Sub Test()
    Dim fso As Object
    Set fso = CreateObject("Scripting.FileSystemObject")
    fso.MoveFolder "C:\Tmp", "C:\etc\"
End Sub
Veya;

Kod:
Sub Test2()
    Name "C:\Tmp" As "C:\etc\Tmp"
End Sub
Sonuçta, C:\Tmp klasörü silinir ve C:\etc\Tmp olur.

Eğer C:\Tmp klasörünün kendisi dursun ama içindeki bütün uzantılı dosyalar C:\etc klasörüne taşınsın istiyorsan yani; C:\etc\dosya.xls, C:\etc\deneme.doc gibi olsun istiyorsan:

Kod:
Sub Test3()
    Dim fso As Object
    Set fso = CreateObject("Scripting.FileSystemObject")
    fso.Movefile "C:\Tmp\*.*", "C:\etc\"
End Sub
Ve son olarak da; eğer C:\Tmp klasöründeki tüm uzantılı dosyaların bir kopyasını da C:\etc klasoru altına yerleştirmek istersen;

Kod:
Sub Test4()
    Dim fso As Object
    Set fso = CreateObject("Scripting.FileSystemObject")
    fso.CopyFile "c:\Tmp\*.*", "c:\etc\"
End Sub
Tabii, kodlardaki C:\Tmp ve C:\etc dosya yollarının PC de mevcut olduğu varsayılmıştır.
 
Katılım
6 Ekim 2004
Mesajlar
250
Excel Vers. ve Dili
MSOffice 2010 TR
Altın Üyelik Bitiş Tarihi
19-11-2020
çok tesekkur ederim harika kodlar.. ellerinize saglik...
 

tamer42

Destek Ekibi
Destek Ekibi
Katılım
11 Mart 2005
Mesajlar
3,058
Excel Vers. ve Dili
Office 2013 İngilizce
Merhabalar;

Dosya bir klasörden diğerine taşınırken; eğer taşınacağı yerde aynı isimde dosya varsa bu dosyanın üzerine yazarak (yada bu dosyayı silerek) taşıması nasıl sağlanabilir.


Sub Test3()
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
fso.Movefile "C:\Tmp\1111.doc", "C:\etc\"
End Sub

İyi Çalışmalar.
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,646
Excel Vers. ve Dili
Pro Plus 2021
[vb:1:fd7108b3a3]Sub Test3()
Dim fso As Object
dsy = "1111.doc"
hdf = "C:\data\"
kynk = "C:\Temp\"

Set fso = CreateObject("Scripting.FileSystemObject")
If fso.FileExists(hdf & dsy) Then fso.DeleteFile hdf & dsy
fso.Movefile kynk & dsy, hdf
Set fso = Nothing
End Sub[/vb:1:fd7108b3a3]
 
Üst