1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
'**********************************************************************************************************
' Nazwa: usunPlik
' Autor: mielk | 2012-10-14
'
' Opis: Funkcja usuwająca z systemu plików plik o podanej ścieżce
'
' Argumenty:
' sciezka Ścieżka dostępu do pliku, który ma zostać usunięty.
'
' Zwraca:
' Boolean True - jeżeli plik został usunięty lub plik o podanej ścieżce nie istnieje.
' False - jeżeli usunięcie pliku o podanej ścieżce jest niemożliwe (np. jest on
' aktualnie używany).
'
'
' --- Zmiany ----------------------------------------------------------------------------------------------
' 2012-10-14 mielk Utworzenie funkcji.
'**********************************************************************************************************
Public Function usunPlik(sciezka As String) As Boolean
Const NAZWA_METODY As String = "usunPlik"
Const ERR_NUM_PLIK_NIE_ISTNIEJE As Long = 53
'------------------------------------------------------------------------------------------------------
Static objFSO As Object 'Późne wiązanie pozwala korzystać z funkcji nawet jeżeli
'nie jest załadowana biblioteka Microsoft Scripting Runtime.
'------------------------------------------------------------------------------------------------------
'Tworzy instancję klasy FileSystemObject, jeżeli nie została jeszcze stworzona. ---------------------|
If objFSO Is Nothing Then '|
Set objFSO = VBA.CreateObject("Scripting.FileSystemObject") '|
End If '|
'----------------------------------------------------------------------------------------------------|
'Spróbuj usunąć podany plik. Jeżeli nie jest to możliwe, kod przeskakuje do labelu . ----------------|
'NiemozliweUsunieciePliku '|
On Error GoTo NiemozliweUsunieciePliku '|
Call objFSO.usunPlik(sciezka) '|
usunPlik = True '|
'----------------------------------------------------------------------------------------------------|
'==========================================================================================================
ExitPoint:
Exit Function
'----------------------------------------------------------------------------------------------------------
NiemozliweUsunieciePliku:
If VBA.Err.number = ERR_NUM_PLIK_NIE_ISTNIEJE Then
'Plik nie mógł zostać usunięty, ponieważ nie istnieje. W takiej sytuacji funkcja ma zwracać True.
usunPlik = True
Else
'Plik nie może być usunięty z innych powodów (np. jest aktualnie używany).
usunPlik = False
End If
GoTo ExitPoint
End Function