Страницы: 1
RSS
ПРОВЕРКА НАЛИЧИЯ СИГНАЛЬНОГО Ф-ЛА НА ДИСКЕ
 
Добрый день ВСЕМ!!!  
Второй день бьюсь над тем чтобы прописать условие по проверке наличия сигнального файла  на диске, который в свою очередь запускает второй макрос, а оказывается само условие проверки не правильное (т.е., "код не видит сам ф-л). Записываю так, что не правильно?    
Sub CheckFile()  
If Len(Dir("C:\temp\задание1.log")) Then  
MsgBox "Есть!"  
 
Заранее спасибо!
 
Нельзя так писать:  
 
If Len(Dir("файл1")) And Len(Dir("файл2")) And Len(Dir("файл3")) And Len(Dir("файл4")) Then ...  
 
Вообще, когда я писал If Len(Dir("файл1")) then ...  
я предполагал, что будет проверяться ОДИН файл  
Правильно было бы эту строку записать так:  
If Len(Dir("файл1"))>0 then ...  
 
Для одного файла можно с нулём не сравнивать, но, если подобных условий несколько, сравнение с нулём ОБЯЗАТЕЛЬНО:  
 
 
If Len(Dir("файл1"))>0 And Len(Dir("файл2"))>0 And Len(Dir("файл3"))>0 And Len(Dir("файл4"))>0 Then ...  
 
 
Ну или так - тоже вариант, но без лишних сравнений:  
If Len(Dir("файл1"))*Len(Dir("файл2"))*Len(Dir("файл3"))*Len(Dir("файл4")) Then ...
 
{quote}{login=EducatedFool}{date=15.11.2010 04:07}{thema=}{post}Нельзя так писать:  
 
If Len(Dir("файл1")) And Len(Dir("файл2")) And Len(Dir("файл3")) And Len(Dir("файл4")) Then ...  
 
Вообще, когда я писал If Len(Dir("файл1")) then ...  
я предполагал, что будет проверяться ОДИН файл  
Правильно было бы эту строку записать так:  
If Len(Dir("файл1"))>0 then ...  
 
Для одного файла можно с нулём не сравнивать, но, если подобных условий несколько, сравнение с нулём ОБЯЗАТЕЛЬНО:  
 
 
If Len(Dir("файл1"))>0 And Len(Dir("файл2"))>0 And Len(Dir("файл3"))>0 And Len(Dir("файл4"))>0 Then ...  
 
 
Ну или так - тоже вариант, но без лишних сравнений:  
If Len(Dir("файл1"))*Len(Dir("файл2"))*Len(Dir("файл3"))*Len(Dir("файл4")) Then ...{/post}{/quote}  
 
Скузи! Глюк считывания файла с указанного места (100 раз проверял путь все ок), поменял путь все заработало. СПАСИБО!  
Sub CheckFile()  
If Len(Dir("C:\Documents and Settings\novikov\Рабочий стол\1", vbDirectory)) Then  
MsgBox "Есть!"  
Else: MsgBox "Жду" ': (Надо чтобы иначе было опять проверка наличия сигнального ф-ла)  
Application.OnTime Now + TimeValue("00:00:05"), "CheckFile"  
End If  
End Sub
Страницы: 1
Читают тему
Наверх
Loading...