• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Soru Seçilen Dosyayı Belirtilen Yere, Belirtilen Ad İle Kopyalamak

Katılım
23 Mart 2016
Mesajlar
8
Excel Vers. ve Dili
Exel 2013 - Türkçe
Dim pencere As FileDialog
Set pencere = Application.FileDialog(msoFileDialogOpen)
pencere.Filters.Clear
pencere.AllowMultiSelect = False
pencere.Filters.Add "Resim Dosyaları(.jpg, .jpeg, .png)", "*.jpg, *.jpeg, *.png"
pencere.Title = "Resim Seç"

ile seçtiğim bir dosyayı, yine aktif kitabın bulunduğu yolun içinde "Foto" isimli klasöre (ActiveWorkbook.Path & "/Foto")
"Kayit_Sayfasi.Range("ID").Value" deki değer ile adlandırarak kopyalamak istiyorum. Bir türlü yapamadım. Yardımcı olabilecek var mı?

veya
'Application.FileDialog (msoFileDialogSaveAs)
'Application.FileDialog (msoFileDialogFilePicker)
'Application.GetOpenFilename
'Application.FindFile

bunlardan hangisini, nasıl kullanmalıyız?
 
Kod:
Sub Dosya_Kopyala()

Dim Resim_Sec As FileDialog
Dim Kopyalanacak_Klasör_Yolu, Yeni_Dosya_Adi As String

    Kopyalanacak_Klasör_Yolu = ActiveWorkbook.Path & "/Foto"
    Yeni_Dosya_Adi = Kayit_Sayfasi.Range("ID").Text

Set Resim_Sec = Application.FileDialog(msoFileDialogOpen)
    Resim_Sec.Filters.Clear
    Resim_Sec.AllowMultiSelect = False
    Resim_Sec.Filters.Add "Resim Dosyaları(.jpg)", "*.jpg"
    Resim_Sec.Title = "Resim Seç"

If (Resim_Sec.Show <> 0) Then
    Dim Secilen_Dosya As String
    Secilen_Dosya = Resim_Sec.SelectedItems(1)
    FileCopy Secilen_Dosya, Kopyalanacak_Klasör_Yolu
End If

End Sub

Dosya adını değiştirip nasıl kopyalayabilirim. Veya neyi yanlış yapıyorum?
Bir türlü çalıştıramadım. Yardımcı olursanız çok sevinirim.
 
En can alıcı bölüm hatalı olmuş.

FileCopy Secilen_Dosya, Kopyalanacak_Klasör_Yolu & "\" & Yeni_Dosya_Adi

Not : Klasör separatörünüzü "/" olarak yazmışsınız. Ben de "\" olarak ayarlı olduğu için bu şekilde "\" yazdım. Gerekiyorsa düzeltirsiniz.
 
@Korhan Ayhan 'ın bahsettiği sorunla karşılaşmamak için klasör ayracını doğrudan yazmak yerine sistem ayarının kullanılmasını istemek daha doğru olur:

FileCopy Secilen_Dosya, Kopyalanacak_Klasör_Yolu & Application.PathSeperator & Yeni_Dosya_Adi
 
Geri
Üst