Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.05.2015, 14:19   #1
Fordros
Пользователь
 
Регистрация: 26.06.2012
Сообщений: 89
По умолчанию Управление окном открытия (WinAPI)

Добрый день уважаемые форумчане.
В очередной раз за помощью... Столкнулся с проблемой экспорта файлов через IE. Имеется форма, на которой есть инпут с типом файл
PHP код:
<INPUT id=che2_input type=file name=lfilepens
Как стало известно подложить путь в этот инпут средствами изменения value в VBA невозможно (поправьте если ошибаюсь). С чего логичный выход нажать на кнопку выбора файла и с помощью АПИ выбрать нужный файлик. Но так как мои познания в АПИ совсем мизерны, сам не осилю =(
Хендл окна нахожу, а вот как указать этому окну путь к размещению файлов и само название файлов увы и ах...
Например Здесь есть в описании кнопка "Обзор", если ее нажать, то выскочит стандартное окно выбора файла.
З.Ы. простите за ссыль на другой ресурс
Fordros вне форума Ответить с цитированием
Старый 12.05.2015, 14:34   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
подложить путь в этот инпут средствами изменения value в VBA невозможно
Почему? Делают же люди. Цепляются к OLE самого эксплорера и работают с его DOMом.
Мне думается что кликер тут самое последнее дело.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.05.2015, 08:56   #3
maksim_serg
Форумчанин
 
Аватар для maksim_serg
 
Регистрация: 25.03.2010
Сообщений: 417
По умолчанию

я могу что то путать, но вроде можно взять html код из браузера, изменить его, например так:

Код:
newHTML=replace(<INPUT id=che2_input type=file name=lfilepens>,<INPUT id=che2_input type=file name=lfilepens value=путь к файлу>,oldHTML)
и обратно его загрузить
maksim_serg вне форума Ответить с цитированием
Старый 13.05.2015, 11:14   #4
Fordros
Пользователь
 
Регистрация: 26.06.2012
Сообщений: 89
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Почему? Делают же люди. Цепляются к OLE самого эксплорера и работают с его DOMом.
Мне думается что кликер тут самое последнее дело.
Буду очень благодарен если подскажите где почитать или как сделать, я еще такой далекий к тому о чем Вы говорите...

Цитата:
Сообщение от maksim_serg Посмотреть сообщение
я могу что то путать, но вроде можно взять html код из браузера, изменить его, например так:

Код:
newHTML=replace(<INPUT id=che2_input type=file name=lfilepens>,<INPUT id=che2_input type=file name=lfilepens value=путь к файлу>,oldHTML)
и обратно его загрузить
интересная мысль, не совсем уверен что прокатит, но попробовать стоит...

Последний раз редактировалось Stilet; 13.05.2015 в 11:45.
Fordros вне форума Ответить с цитированием
Старый 13.05.2015, 11:51   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну первая ссыль в гугле: http://www.delphikingdom.com/asp/vie...catalogid=1134
Вполне доходчиво, даром что для Делфи. Однако там все равно применяются те же принципы, что будут и в Си и в Бейсике: Подключение к InternetExporer.Application и работа с IHtmlDocument2.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.05.2015, 11:56   #6
Fordros
Пользователь
 
Регистрация: 26.06.2012
Сообщений: 89
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Ну первая ссыль в гугле: http://www.delphikingdom.com/asp/vie...catalogid=1134
Вполне доходчиво, даром что для Делфи. Однако там все равно применяются те же принципы, что будут и в Си и в Бейсике: Подключение к InternetExporer.Application и работа с IHtmlDocument2.
Спасибо за участие, но мне, человеку который не учился никакому языку программирования, тяжело писать код с "0". Я как собака, понимать - понимаю, а сказать ничего не могу =)
Может есть что-то подобное из готового кода?
Fordros вне форума Ответить с цитированием
Старый 13.05.2015, 11:59   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

И снова гугл гуглит:
http://www.mrexcel.com/forum/excel-q...button-ie.html
http://www.excely.com/excel-vba/ie-automation.shtml
http://www.access-programmers.co.uk/...d.php?p=993845
Цитата:
не учился никакому языку программирования
Тогда проще будет нанять фрилансера, который сделает за денюжку качественно. На пальцах то не обьяснишь, если даже базовые знания отсутствуют.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.05.2015, 12:56   #8
Fordros
Пользователь
 
Регистрация: 26.06.2012
Сообщений: 89
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
И снова гугл гуглит:

Тогда проще будет нанять фрилансера, который сделает за денюжку качественно. На пальцах то не обьяснишь, если даже базовые знания отсутствуют.
Ну я не совсем далекий человек, самоучка просто... У меня есть проект который удачно парсит внутренний сайт и основы я знаю.
Спасибо за ссылки, я такими методами и пользуюсь сейчас, но дело в том что инпут с типом файл имеет атрибут - только чтение (начитался сайтов), из-за этого привычное присваивание значиния через value = "c:\1.xls" не срабатывает =(

Фрилансера бы нанял, да вот только сайт внутренний и доступа из вне нет(
Fordros вне форума Ответить с цитированием
Старый 13.05.2015, 13:37   #9
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Если сайт внутренний, то может проще его переписать, избавившись от ввода пути к файлу? Для чего тогда нужен тег выбора, если выбор будет идти всегда с одного и того же каталога?
Или я не понял ситуацию?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.05.2015, 14:18   #10
maksim_serg
Форумчанин
 
Аватар для maksim_serg
 
Регистрация: 25.03.2010
Сообщений: 417
По умолчанию

если сайт внутренний, может есть смысл добавить еще один инпут?
Код:
<input type="hidden" value="c:\1.xls">
maksim_serg вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Управление из Access другим окном 95979 Microsoft Office Access 1 06.07.2013 00:21
С++ Написание простых приложений Windows. Управление окном yulshaz Помощь студентам 0 01.04.2012 14:33
Управление чужым окном. evgenrpo C# (си шарп) 4 17.03.2012 10:25
Управление окном зада ч C# alxd Общие вопросы .NET 7 01.03.2010 13:40
Управление Excel через WinApi - не используя СОМ, ОЛЕ и прочие блага цивилизации x8i Общие вопросы C/C++ 1 20.08.2009 10:59