Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 | 2 |

 

  Вопрос: Программа для выбора файла, не могу найти ошибку Добавлено: 21.08.08 14:24  

Автор вопроса:  abv

Ответить

  Ответы Всего ответов: 22  

Номер ответа: 16
Автор ответа:
 abv



Вопросов: 4
Ответов: 16
 Профиль | | #16 Добавлено: 25.08.08 18:30
Jasmin, спасибо за новый код и ваш интерес к моему безнадежному делу. Уже думал над вариантом с частью имени файла. Значение ячейки или Inputbox. Номер заказа уникален (2-3 варианта для перебора). Дата - 20-60 файлов. Название - 50-100 (если контора). Это может значительно усложнить поиск.
Варианты решения есть - автосоздание журнала заявок в общем сетевом файле (с гиперссылками на файлы) или вывод отфильтованного списка в отдельное окно с дальнейшим продолжением "ручного" выбора.
Однако, у меня уже спортивный интерес к решению этой задачи "как есть", просто потому что решение будет уникальным в своем роде. Интересно почему такого кода раньше ни кем не создавалось. Сейчас "копаю" в другом направлении:
CreateObject("Shell.Application";).Explore(Sheets("Set";).Cells(13, 2).Value) '1
Sheets("Set";).Cells(13, 2).Hyperlinks(1).Follow '2
Application.GetOpenFilename(FileFilter:="Excel Files (*.xls), *.xls";) '3

Эти команды открывают папку целиком. Номер 2 (пятница) абсолютно не годится. 1 - не закрывает окно выбора папки после открытия файла (закрыть окно программно!!!), но работает. 3 - не знает где искать (или не нашел нужного оператора). Присоединяйтесь и победа будет нашей.

P.S. Ваш код можно применить в программе конвертации различных версий смет в новый формат. Так что труды не напрасны.

Ответить

Номер ответа: 17
Автор ответа:
 Jasmin



Вопросов: 23
Ответов: 417
 Профиль | | #17 Добавлено: 25.08.08 21:40
Нужно все-таки как-то определяться как будет файл называться, который создают по приходу клиента (Чтобы называли одинаково по шаблону), или искать файлы с определенным текстом в определенных ячейках. Это же все-таки бланк я так понимаю. Вот искать все туже фамилию, имя клиента, например. Уже меньше поиска.
Сейчас так получается, что в принципе, что так искать примерно открывая какие-либо файлы в директориях, что создавая "журнал", а затем все равно просматривая его, затраты одинаковые. Нужно хоть за что-то зацепиться. Название файла, содержимое, дата создания и т.д. Попросить девочек, чтобы именовали файл худо-бедно в соответствии с шаблоном. Объяснить, что это облегчит поиск и убыстрит написание программы. :-)
Ну хоть на что-то они же должны ориентироваться при следующем заказе. А так сейчас получается на мой взгляд изобретение велосипеда - попытка написать поисковик/просмотрщик файлов, как их просматривают обычно вручную. Но тут же все-таки тоже есть какая-то фильтрация. Вот ее и попытаться использовать.
Ответ 14 совсем не подходит ?

Ответить

Номер ответа: 18
Автор ответа:
 mc-black



ICQ: 308-534-060 

Вопросов: 20
Ответов: 1860
 Web-сайт: mc-black.narod.ru/dzp.htm
 Профиль | | #18
Добавлено: 27.08.08 09:24
abv,

Давай сделаем еще проще. Ты понятным языком описываешь техническое задание, добавляешь свои файлы (примеры, с которыми надо работать), отправляешь это мне на mc-black[гав]yandex[тчк]ru. А я делаю всю работу "под ключ" за совсем смешные деньги :)

Сюда входит написание кода, подробные комментарии к тексту программы, отладка, тестирование и финишная доработка, если что-то тебя не устроит.

Ответить

Номер ответа: 19
Автор ответа:
 abv



Вопросов: 4
Ответов: 16
 Профиль | | #19 Добавлено: 28.08.08 05:45
Jasmin, код ответа 14 подходит с добавлением дополнительных параметров фильтра, но лучше будет "поисковик-просмотрщик". Задача в том и заключается, чтобы по щелчку мышки открылась сетевая папка и пользователь выбрал нужный ему файл самостоятельно.

mc-black, спасибо за предложение. Программа уже написана и работает. Проблема в одной строчке, которая должна открыть сетевую папку. Сейчас команда открывает Мои документы и пользователь выбирает папку вручную. При повторении операции excel уже запоминает путь и работает нормально. Нужен правильный синтаксис FindFile для открытия сетевой папки или аналог для получения такого же результата.

Ответить

Номер ответа: 20
Автор ответа:
 Jasmin



Вопросов: 23
Ответов: 417
 Профиль | | #20 Добавлено: 28.08.08 07:26
Вот так пробовал ? У меня несколько макросов, которые вот так отлично открывают с сетевых ресурсов файлы.
With Application.FileDialog(msoFileDialogOpen)
  .AllowMultiSelect = False   'выбор 1 файла
  .InitialFileName = Worksheets("Загрузка";).Range("A1";).Value
  If .Show = -1 Then   'если что-то выбрано было
    a = 1
    .Execute
  End If
End With
  
If a = 1 Then     'если что-то выбрано было
'открываем файл.  
  actWorkTemp = ActiveWorkbook.Name
end if
Попробуй поиграться с этим, поставить в цикл может...

Ответить

Номер ответа: 21
Автор ответа:
 abv



Вопросов: 4
Ответов: 16
 Профиль | | #21 Добавлено: 28.08.08 09:10
Jasmin! Огромное спасибо за код. Все заработало. :-)

Ответить

Номер ответа: 22
Автор ответа:
 Jasmin



Вопросов: 23
Ответов: 417
 Профиль | | #22 Добавлено: 28.08.08 12:39
День треттий. Истина где-то рядом :-(
А на шестой день ему открылась истина. Она пришла. :-)))

Ответить

Страница: 1 | 2 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам