Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

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

 

  Вопрос: Получение данных без открытия файла Добавлено: 06.06.06 10:14  

Автор вопроса:  APS | ICQ: 234458121 
Существует некоторое количество похожих файлов. Необходимо собрать данные из этих файлов в один общий файл. Т.е. необходимо в итоговом файле сделать кнопочку, при нажатии на которую выводился бы диалог выбора файла, после этого данные бы из выбранного файла попадали в активную книгу.
В общем, мне примерно понятно как это сделать, но не знаю с какой стороны подойти к тому, чтобы файл не открывался, а просто бы выбирался, и данные из него переносились в активную книгу.

Ответить

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

Номер ответа: 1
Автор ответа:
 Незнайка



Вопросов: 7
Ответов: 188
 Профиль | | #1 Добавлено: 06.06.06 11:47
Существует некоторое количество похожих файлов. Необходимо собрать данные из этих файлов в один общий файл.


выводился бы диалог выбора файла, после этого данные бы из выбранного файла попадали в активную книгу


И зачем тебе писать что-то если ты прекрасно открываешь каждый файл и переносишь данные???
Короче диалоговое окно выбора файла тебе зачем???
А по сабж - читай форум - ответы есть и совсем недавно.

Ответить

Номер ответа: 2
Автор ответа:
 APS



ICQ: 234458121 

Вопросов: 38
Ответов: 107
 Профиль | | #2 Добавлено: 06.06.06 12:06
Мне примерно понятно как получить данные, не открывая файл. Но непонятно как указать имя файла, его не открывая.

Ответить

Номер ответа: 3
Автор ответа:
 Незнайка



Вопросов: 7
Ответов: 188
 Профиль | | #3 Добавлено: 06.06.06 12:21
Опачки! А разве нужно открывать файл, чтоб узнать его имя????????????????????
Попробуй перебирать файлы в заданном каталоге:
http://www.vbnet.ru/forum/show.aspx?id=110918

Ответить

Номер ответа: 4
Автор ответа:
 HOOLIGAN



Вопросов: 0
Ответов: 1066
 Профиль | | #4 Добавлено: 06.06.06 12:21
Ты наверное путаешь открытие файла и диалог открытия файла.
Диалог открытия вообще ничего не открывает, просто возвращает имя файла, на который ткнул пользователь. Если нужно получить имена файлов без диалога открытия, то воспользуйся функцией Dir - она перечисляет файлы в папке.

Ответить

Номер ответа: 5
Автор ответа:
 APS



ICQ: 234458121 

Вопросов: 38
Ответов: 107
 Профиль | | #5 Добавлено: 06.06.06 12:39
Видать, что-то путаю.
Нужно именно вернуть имя файла + полный путь к нему, на который ткнул пользователь, после чего диалоговое окно закрыть.
Функция Dir не подходит, т.к. файл может быть в любом месте...

Ответить

Номер ответа: 6
Автор ответа:
 Незнайка



Вопросов: 7
Ответов: 188
 Профиль | | #6 Добавлено: 06.06.06 13:00
Ну тогда вот (для VBA):
mFileName = Application.GetOpenFilename()

Ответить

Номер ответа: 7
Автор ответа:
 APS



ICQ: 234458121 

Вопросов: 38
Ответов: 107
 Профиль | | #7 Добавлено: 06.06.06 15:08
Супер! Спасибо! Начало положено!!!

Ответить

Номер ответа: 8
Автор ответа:
 APS



ICQ: 234458121 

Вопросов: 38
Ответов: 107
 Профиль | | #8 Добавлено: 06.06.06 18:17
Че-то я совсем торможу.
        oFileName = Application.GetOpenFilename(Title:="Выберите файл для экспорта данных";)'Получаю имя необходимого файла
        oModels = Application.Workbooks(oFileName).Worksheets(1).Range("Models";)'Пытаюсь вытащить из именованной ячейки значение
Выдает ошибку: Subscript out of range (Error 9)

Ответить

Номер ответа: 9
Автор ответа:
 APS



ICQ: 234458121 

Вопросов: 38
Ответов: 107
 Профиль | | #9 Добавлено: 06.06.06 18:54
В общем, имя книги известно. Как получить значение определенной ячейки, не открывая книгу.
Что-то простое чувствую, но найти не могу...

Ответить

Номер ответа: 10
Автор ответа:
 Незнайка



Вопросов: 7
Ответов: 188
 Профиль | | #10 Добавлено: 06.06.06 20:05
http://j-walk.com/ss/excel/tips/tip82.htm

Ответить

Номер ответа: 11
Автор ответа:
 APS



ICQ: 234458121 

Вопросов: 38
Ответов: 107
 Профиль | | #11 Добавлено: 07.06.06 14:17
Особый респект Незнайке. Все работает.
К сожалению, не открывая файл, получить данные можно только, если файл в формате Excel.
Из текстового файла это попросту невозможно. Если не так, поправьте меня!

И еще вопрос: реально ли получить данные в Excel из тела письма Outlook, не сохраняя это письмо отдельным файлом?

Ответить

Номер ответа: 12
Автор ответа:
 Незнайка



Вопросов: 7
Ответов: 188
 Профиль | | #12 Добавлено: 07.06.06 22:28
К сожалению, не открывая файл, получить данные можно только, если файл в формате Excel.
Сожалеть не нужно - с текстовыми еще проще:
http://www.vbzero.narod.ru/chapter1/page_7.htm
И еще вопрос: реально ли получить данные в Excel из тела письма Outlook, не сохраняя это письмо отдельным файлом?
Конечно можно, для начала изучи это (и другие примеры там же - поможет):
http://www.microsoft.ru/offext/developers/advices/advice.aspx?id=48

Ответить

Номер ответа: 13
Автор ответа:
 APS



ICQ: 234458121 

Вопросов: 38
Ответов: 107
 Профиль | | #13 Добавлено: 08.06.06 10:15
И опять респект Незнайке.
Сожалеть не нужно - с текстовыми еще проще:
http://www.vbzero.narod.ru/chapter1/page_7.htm

Но тут описано не для VBA, а для VB, хотя все и похоже. А файл опять же открывается...
Конечно можно, для начала изучи это (и другие примеры там же - поможет):
http://www.microsoft.ru/offext/developers/advices/advice.aspx?id=48

Весьма полезная вещичка. Теперь надо понять, как сделать, чтобы при приходе нового письма с определенными реквизитами данные из него автоматом попадали в определенный файл Excel.

Еще раз спасибо за помощь в изучении VBA.

Ответить

Номер ответа: 14
Автор ответа:
 Незнайка



Вопросов: 7
Ответов: 188
 Профиль | | #14 Добавлено: 08.06.06 10:43
как сделать, чтобы при приходе нового письма с определенными реквизитами данные из него автоматом попадали в определенный файл Excel


Типа порядка действий:

Пишешь в аутлуке при событии получения нового письма создаешь экземпляр Excelя, дальше берешь из тела письма все что хочешь и распихиваешь по файлам.

Если есть конкретная задача - опиши - посоветуем.

Ответить

Номер ответа: 15
Автор ответа:
 APS



ICQ: 234458121 

Вопросов: 38
Ответов: 107
 Профиль | | #15 Добавлено: 08.06.06 11:46
На сайте заполняется анкета, после этого в теле письма приходят данные.
Тема письма всегда одна и та же.
В теле письма по строкам название поля, введенные данные.
Нужны вот эти данные автоматом запихивать в Excel в ячейки, соответствующие названию поля.

Ответить

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

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



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