Страница: 1 |
Страница: 1 |
Вопрос: Помогите!>>>
Добавлено: 09.12.06 17:11
Автор вопроса: Santiago
Как в ВБА Экселе проверить директорию сохранения на наличие файла по названию.
Я нашёл функцию FileExists, но как её использовать не пойму. Помогите, напишите пример.
Ответы
Всего ответов: 9
Номер ответа: 1
Автор ответа:
night-roll
Вопросов: 36
Ответов: 326
Профиль | | #1
Добавлено: 09.12.06 17:40
например через fso
If ReportFileStatus(Путь + Имя_Файла) = "yes" Then ... ' далее твой код
' сама функция
Function ReportFileStatus(filespec)
Dim fso, msg
Set fso = CreateObject("Scripting.FileSystemObject"
If (fso.FileExists(filespec)) Then
msg = "yes" ' нашел
Else
msg = "no" ' не нашел
End If
ReportFileStatus = msg ' возвращаем значение функции
End Function
P.S. правда, не все приемлят этот метод
Номер ответа: 2
Автор ответа:
Santiago
Вопросов: 1
Ответов: 1
Профиль | | #2
Добавлено: 09.12.06 18:52
Спасибо, брат!
Номер ответа: 3
Автор ответа:
Arseny
ICQ: 298826769
Вопросов: 53
Ответов: 1732
Профиль | | #3
Добавлено: 09.12.06 20:28
+ еще таскать библу scrrun.dll с собой...
Номер ответа: 4
Автор ответа:
Sacred Phoenix
ICQ: 304238252
Вопросов: 52
Ответов: 927
Профиль | | #4
Добавлено: 09.12.06 20:39
 im fso, msg
[CODE]Function ReportFileStatus(ByVal filespec As String) As Boolean
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
If (Not fso Is Nothing) Then Return fso.FileExists(filespec)
End Function
Номер ответа: 5
Автор ответа:
Sacred Phoenix
ICQ: 304238252
Вопросов: 52
Ответов: 927
Профиль | | #5
Добавлено: 09.12.06 20:40
а вообще API есть
Номер ответа: 6
Автор ответа:
night-roll
Вопросов: 36
Ответов: 326
Профиль | | #6
Добавлено: 10.12.06 19:33
оптимизация кода - дело рук творящих
Номер ответа: 7
Автор ответа:
Sacred Phoenix
ICQ: 304238252
Вопросов: 52
Ответов: 927
Профиль | | #7
Добавлено: 11.12.06 21:44
Номер ответа: 8
Автор ответа:
night-roll
Вопросов: 36
Ответов: 326
Профиль | | #8
Добавлено: 22.12.06 22:02
2 Sacred
вот это не прокатит!
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject"
If (Not fso Is Nothing) Then Return fso.FileExists(filespec)
End Function
ошибка вот здесь
предлагаю вот так
иначе нет возвращения значения функции
Номер ответа: 9
Автор ответа:
night-roll
Вопросов: 36
Ответов: 326
Профиль | | #9
Добавлено: 14.01.07 15:45
ещё вот такую вещь я использовал
ExDir = IIf(Dir(iPath, vbDirectory) <> "", True, False)
End Function
Function ExFile(iFileName As String, iPath As String) As Boolean ' проверка наличия файла
ExFile = IIf(iFileName = Dir(iFullName & iFileName), True, False)
End Function
где iFileName ' имя файла вида "MyFileName"
iPath ' имя директории вида "С:\MyDir\"
обращаю внимание на "\" в конце iPath