- Katılım
- 27 Ekim 2020
- Mesajlar
- 25
- Excel Vers. ve Dili
- Office 2019
- Altın Üyelik Bitiş Tarihi
- 18-10-2024
Merhaba Herkese,
Excel VBA kullanarak ağ da bulunan klasörden masa üstümde yer alan bir klasör içerisine pdf dökümanları kopyalamak istiyorum. İnternette çok yerde araştırdım bir klasör içerisindeki dökümanı kopyalamada sorun yaşamıyorum fakat değişik isimlerde alt klasörler içerisinde dökümanı aratıp kopylama işlemi yaptıramıyorum. Yardımcı olabilir misiniz.
Kurgum: Excelde A sütunununa yazdığım dosya adlarının ilk 8 hanesini kontrol ederek ağdaki SATIN ALMA\klasör1\Test , SATIN ALMA\klasör2\Test, SATIN ALMA\klasör3\Test gibi klasörler içerisinde pdf dökümanını bulup hedef klasöre kopya oluşturmak.
aranacak döküman isimlerinin formatı AY-1000-xxxx, AY-1001-xxxx, AY-1002-xxxx gibi isimlerdir. xxxx kısmı genelde sabit oluyor.
Yardımlarınız için şimdiden teşekkürler.
Sub Kopyala()
Dim FSO
Dim dokuman As String
Dim kaynak As String
Dim hedef As String
Dim i As Integer
Dim k As Integer
k = Selection.Cells.Count
'Kaynak klasör
kaynak = "\\Ağ klasörü\planlama\SATIN ALMA\xxxxx(değişken alt klasör ismi)\Test\"
'Hedef klasör
hedef = "C:\Users\Desktop\Mail At\"
'Create Object for File System
Set FSO = CreateObject("Scripting.FileSystemObject")
Range("A2").Select
For i = 0 To k - 1
dokuman = Selection & ".pdf"
'Kaynak klsörde dosya mevcut mu diye bakılıyor.
If Not FSO.FileExists(kaynak & dokuman) Then
MsgBox "Specified File Not Found in Source Folder", vbInformation, "Not Found"
'Dosya zaten hedef klasörde yok ise, dosya kopyalanır
ElseIf Not FSO.FileExists(hedef & dokuman) Then
FSO.CopyFile (kaynak & dokuman), hedef ', True
Else
MsgBox "Specified File Already Exists In The Destination Folder", vbExclamation, "File Already Exists"
End If
Selection.Offset(1, 0).Select
Next
End Sub
Excel VBA kullanarak ağ da bulunan klasörden masa üstümde yer alan bir klasör içerisine pdf dökümanları kopyalamak istiyorum. İnternette çok yerde araştırdım bir klasör içerisindeki dökümanı kopyalamada sorun yaşamıyorum fakat değişik isimlerde alt klasörler içerisinde dökümanı aratıp kopylama işlemi yaptıramıyorum. Yardımcı olabilir misiniz.
Kurgum: Excelde A sütunununa yazdığım dosya adlarının ilk 8 hanesini kontrol ederek ağdaki SATIN ALMA\klasör1\Test , SATIN ALMA\klasör2\Test, SATIN ALMA\klasör3\Test gibi klasörler içerisinde pdf dökümanını bulup hedef klasöre kopya oluşturmak.
aranacak döküman isimlerinin formatı AY-1000-xxxx, AY-1001-xxxx, AY-1002-xxxx gibi isimlerdir. xxxx kısmı genelde sabit oluyor.
Yardımlarınız için şimdiden teşekkürler.
Sub Kopyala()
Dim FSO
Dim dokuman As String
Dim kaynak As String
Dim hedef As String
Dim i As Integer
Dim k As Integer
k = Selection.Cells.Count
'Kaynak klasör
kaynak = "\\Ağ klasörü\planlama\SATIN ALMA\xxxxx(değişken alt klasör ismi)\Test\"
'Hedef klasör
hedef = "C:\Users\Desktop\Mail At\"
'Create Object for File System
Set FSO = CreateObject("Scripting.FileSystemObject")
Range("A2").Select
For i = 0 To k - 1
dokuman = Selection & ".pdf"
'Kaynak klsörde dosya mevcut mu diye bakılıyor.
If Not FSO.FileExists(kaynak & dokuman) Then
MsgBox "Specified File Not Found in Source Folder", vbInformation, "Not Found"
'Dosya zaten hedef klasörde yok ise, dosya kopyalanır
ElseIf Not FSO.FileExists(hedef & dokuman) Then
FSO.CopyFile (kaynak & dokuman), hedef ', True
Else
MsgBox "Specified File Already Exists In The Destination Folder", vbExclamation, "File Already Exists"
End If
Selection.Offset(1, 0).Select
Next
End Sub