• DİKKAT

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

Excel'de C:'nin altindaki ismi belirli bir kitap silmek

  • Konbuyu başlatan Konbuyu başlatan bolmez
  • Başlangıç tarihi Başlangıç tarihi
Katılım
15 Nisan 2006
Mesajlar
9
Selamlar benim C:\musteriler altinda .xls uzantili bircok excel calisma kitaplarim (Workbook) var. Makro ile ismi A1 hucresinde yazili olan workbook'u silmek istiyorum. Yardimci olursaniz sevinirim.

Makro, ornegin; A1 hucresinde Ahmet yaziyorsa C:\musteriler\Ahmet.xls kitabini silecek.
 
Aşağıdaki kod ile silebilirsiniz. Yalnız bu kodda silinen dosya çöp kutusuna uğramaz direk silinir, bu sebeple geri getiremezsiniz.

[vb:1:ee6cec9e8e]Sub sil()
sor = MsgBox("Dosyayı silmek istediğinizden eminmisiniz?", vbYesNo)
If sor = vbYes Then Kill "C:\" & [a1] & ".xls "
End Sub
[/vb:1:ee6cec9e8e]
 
leventm' Alıntı:
Aşağıdaki kod ile silebilirsiniz. Yalnız bu kodda silinen dosya çöp kutusuna uğramaz direk silinir, bu sebeple geri getiremezsiniz.

[vb:1:10483e61e9]Sub sil()
sor = MsgBox("Dosyayı silmek istediğinizden eminmisiniz?", vbYesNo)
If sor = vbYes Then Kill "C:\" & [a1] & ".xls "
End Sub
[/vb:1:10483e61e9]

Tesekkurler Levent bey, fakat burada silinen dosyanin dcöp kutusuna atilmadan dogrudan imha edilmesi benim acimdan risk yaratabilir. Peki ornegin bu dosyayi silmek yerine dosyayi "C:\" nin altindan alip "C:\sil" altina tasimak mumkun mu? Veya bu dosya adini yeniden adlandirmak mumkun mu?
 
Peki ornegin bu dosyayi silmek yerine dosyayi "C:\" nin altindan alip "C:\sil" altina tasimak mumkun mu? Veya bu dosya adini yeniden adlandirmak mumkun mu?

Bu durumda aşağıdaki kodu deneyin.
Dosya hem istediğiniz yere taşınır hemde adı örneğin deneme olarak değiştirilir.

[vb:1:d907631ab1]Name "c:\" & [a1] & ".xls" As "c:\sil\deneme.xls"
[/vb:1:d907631ab1]
 
A1 hücresinde örneğin "ahmet" yazıyorsa, "C:\musteriler\ahmet.xls" dosyasının çöp kutusuna gönderilmesini sağlamak için;

Kod:
Type SHFILEOPSTRUCT
    hwnd As Long
    wFunc As Long
    pFrom As String
    pTo As String
    fFlags As Integer
    fAnyOperationsAborted As Long
    hNameMappings As Long
    lpszProgressTitle As Long
End Type

Declare Function SHFileOperation Lib "shell32.dll" _
        Alias "SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As Long

Const FO_DELETE = &H3
Const FOF_ALLOWUNDO = &H40
'
Sub Test()
    Dim SHop As SHFILEOPSTRUCT
    Dim strFile As String
    strFile = "C:\musteriler\" & Range("A1").Text & ".xls"
    With SHop
        .wFunc = FO_DELETE
        .pFrom = strFile
        .fFlags = FOF_ALLOWUNDO
    End With
    SHFileOperation SHop
End Sub
 
leventm,


Levent bey, Name komutu calisti ve isimi gordu. Tesekkurler ancak, Kill komutu ile makroyu calistirdigimda makro calisiyor ancak dosyayi silmiyor.
 
Geri
Üst