Имя файла

  • Автор темы Gor
  • Дата начала
G

Gor

Подскажите пож-та как возможно вывести в какую нибудь лотусовую переменную имя файла в определённой директории(не его длину а именно имя к примеру REPORT.xls)?? долго искал но ничего не нашёл по этому вопросу... неужели для этого обязательно вызывать API функционал?
 
G

Gor

мне надо сделать проверку существует ли файл с таким именем в определённом каталоге или нет
(имя файла у меня содержится в переменной)
проверку на совпадающий каталог я сделал а на файл нет
 
D

DNT

Для: Gor

Можно так наверно исхитриться:


On Error Goto ErrorHandle

fileNum% = Freefile()
Open directory_path$+filename$ For Input As fileNum%
print "Файл существует"

ErrorHandle:
print "Файл не существует"
Exit Sub

А может кто подскажет более "элегантный" способ
 
G

Gor

а если файл существует то он его открывает получается? хотя конечно это вариант!
 
D

DNT

Для: Gor

Да, кстати, так надо:


On Error Goto ErrorHandle

fileNum% = Freefile()
Open directory_path$+filename$ For Input As fileNum%
Close fileNum%
print "Файл существует"

ErrorHandle:
print "Файл не существует"
Exit Sub
 
G

Gor

Забыл совсем к чему стремлюсь ещё)) проверку на наличие то как выяснилось сделать ещё реально но
у меня следующий шаг такой:
имена у файлов в каталоге такие 1.xls, 2.xls, 3.xls
и если я не нахожу файл с идентичным именем мне необходимо открыть файл с максимальным именем
то есть из трёх вышеприведённых мне необходимо открыть 3.xls переписать его и сохранить под новым именем (ну как переписать и сохранить под новым именем с этим проблем нет, вот как его открыть именно нужный мне это вопрос)!!
вот для чего я хотел имя файла получить!))
Может есть у кого нить какие идеи?
 
D

DNT

Для: Gor

Значит тебе, в случае если файла нет, надо взять список фалов, сортирнуть их по имени и взять самый большой. :)

Список фалов возмешь с помощью Dir, хелп почитай в этом напрввлении:

Examples: Dir function

' List the contents of the c:\ directory, one entry per line.
Dim pathName As String, fileName As String
pathName$ = "c:\*.*"
fileName$ = Dir$(pathName$, 0)
Do While fileName$ <> ""
Print fileName$
fileName$ = Dir$()
Loop
 
G

Gor

Для: DNT

да действительно спасибо за помощь всё получилось и список, и сортировка. Видел этот метод но не вчитался внимательно, думал что он список каталогов выводит.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!