Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Отправка файла или его указание в окне выбора IE, upload - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Отправка файла или его указание в окне выбора IE, upload (Макросы/Sub)
Отправка файла или его указание в окне выбора IE, upload
Ivanius Дата: Четверг, 30.10.2014, 19:40 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 14
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
В общем хочу автоматизировать загрузку на сайт: пост запросом не получаеться, уже все перепробовал, с помощью ИЕ- по проще намного, но тут встала проблема - нужно аплоадить картинки, а их фиг укажешь...


нашел 2 процедурки в теории проблема в том что когда я вызываю с помощью макроса или когда обьект ИЕ связан с макросом - макрос ждет закрытия окна выбора файла и не работает когда оно открыто...

Upload_Set_Filename и Upload_Click_Open - но они не работают, может кто сталкивался?


кросс - но там молчат кросс


Сообщение отредактировал Ivanius - Четверг, 30.10.2014, 19:42
 
Ответить
СообщениеВ общем хочу автоматизировать загрузку на сайт: пост запросом не получаеться, уже все перепробовал, с помощью ИЕ- по проще намного, но тут встала проблема - нужно аплоадить картинки, а их фиг укажешь...


нашел 2 процедурки в теории проблема в том что когда я вызываю с помощью макроса или когда обьект ИЕ связан с макросом - макрос ждет закрытия окна выбора файла и не работает когда оно открыто...

Upload_Set_Filename и Upload_Click_Open - но они не работают, может кто сталкивался?


кросс - но там молчат кросс

Автор - Ivanius
Дата добавления - 30.10.2014 в 19:40
doober Дата: Пятница, 31.10.2014, 02:24 | Сообщение № 2
Группа: Друзья
Ранг: Ветеран
Сообщений: 947
Репутация: 323 ±
Замечаний: 0% ±

Excel 2010
Как вариант.
Перед вызовом диалогового окна создаете vbs скрипт,запускаете его
В скрипте прописываете код,который через Апи будет находить окно,
вставлять путь к файлу,нажимать кнопку выбора.
Цикл Do Loop с задержкой 10-200 миллисекунд.
Когда VBS выполнит свою работу,вы далее макросом удаляете его.
Это аналог второго потока.
В ХР поиск окна и работа с ним намного проще,чем в семерке.
В зависимости от темы,иногда попадаются проблемы с поиском комбобокса..
Имя класса меняется.Обязательно перед вставкой пути к файлу изменить текущий каталог
через ChDir


 
Ответить
СообщениеКак вариант.
Перед вызовом диалогового окна создаете vbs скрипт,запускаете его
В скрипте прописываете код,который через Апи будет находить окно,
вставлять путь к файлу,нажимать кнопку выбора.
Цикл Do Loop с задержкой 10-200 миллисекунд.
Когда VBS выполнит свою работу,вы далее макросом удаляете его.
Это аналог второго потока.
В ХР поиск окна и работа с ним намного проще,чем в семерке.
В зависимости от темы,иногда попадаются проблемы с поиском комбобокса..
Имя класса меняется.Обязательно перед вставкой пути к файлу изменить текущий каталог
через ChDir

Автор - doober
Дата добавления - 31.10.2014 в 02:24
Ivanius Дата: Пятница, 31.10.2014, 13:04 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 14
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
о спасибо, мне все-равно у меня свободная машина чисто для этого дела, я могу вообще отдельно положить файл в hta, VBS вроде от VBA не сильно отличается, сейчас буду что-то пробовать, спасибо за идею.
 
Ответить
Сообщениео спасибо, мне все-равно у меня свободная машина чисто для этого дела, я могу вообще отдельно положить файл в hta, VBS вроде от VBA не сильно отличается, сейчас буду что-то пробовать, спасибо за идею.

Автор - Ivanius
Дата добавления - 31.10.2014 в 13:04
WeRiX Дата: Пятница, 31.10.2014, 20:44 | Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 44
Репутация: 4 ±
Замечаний: 0% ±

Excel 2013
Цитата
ИЕ связан с макросом - макрос ждет закрытия окна выбора файла и не работает когда оно открыто...

Если действовать просто и грубо, то почему не использовать sendkeys вместо фатального .click, при этом макрос не стопорится
примерно так
[vba]
Код
IEdoc.getelementbyid("popup-photos").Click
      Set CurItem = IEdoc.getelementbyid("form1")
      CurItem.Focus
      CurItem.Click
      CurItem(0).Focus
sleep 100
SendKeys "{ENTER}"
sleep 100
SendKeys "C:\Картинка1.jpeg"
sleep 100
SendKeys "{tab 2}"
sleep 100
SendKeys "{ENTER}"
[/vba]
... как очень-очень простое и некрасивое решение, спасет пока не реализуете красивое и сложное (:


Сообщение отредактировал WeRiX - Пятница, 31.10.2014, 20:46
 
Ответить
Сообщение
Цитата
ИЕ связан с макросом - макрос ждет закрытия окна выбора файла и не работает когда оно открыто...

Если действовать просто и грубо, то почему не использовать sendkeys вместо фатального .click, при этом макрос не стопорится
примерно так
[vba]
Код
IEdoc.getelementbyid("popup-photos").Click
      Set CurItem = IEdoc.getelementbyid("form1")
      CurItem.Focus
      CurItem.Click
      CurItem(0).Focus
sleep 100
SendKeys "{ENTER}"
sleep 100
SendKeys "C:\Картинка1.jpeg"
sleep 100
SendKeys "{tab 2}"
sleep 100
SendKeys "{ENTER}"
[/vba]
... как очень-очень простое и некрасивое решение, спасет пока не реализуете красивое и сложное (:

Автор - WeRiX
Дата добавления - 31.10.2014 в 20:44
Ivanius Дата: Суббота, 01.11.2014, 17:48 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 14
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
слушай спасибо сейчас попробую, т.к. уже хотел на делфи или на плюсах писать, на ВБС ничего не нашел.
Если получиться сделать чтобы макрос не стопорился а нажать кнопку загрузки чем-то другим - то тогда можно и мою процедуру запустить - она все сделает красиво уже.
Интересная мылсь но вроде с клавиатуры не получается
там окно вот такое http://prntscr.com/51xn6w может мышкой через апи?
и таки да проверил, если нажимаешь мышкой, а не макросом (пока ручками нажал) то все работает.


Сообщение отредактировал Ivanius - Суббота, 01.11.2014, 18:02
 
Ответить
Сообщениеслушай спасибо сейчас попробую, т.к. уже хотел на делфи или на плюсах писать, на ВБС ничего не нашел.
Если получиться сделать чтобы макрос не стопорился а нажать кнопку загрузки чем-то другим - то тогда можно и мою процедуру запустить - она все сделает красиво уже.
Интересная мылсь но вроде с клавиатуры не получается
там окно вот такое http://prntscr.com/51xn6w может мышкой через апи?
и таки да проверил, если нажимаешь мышкой, а не макросом (пока ручками нажал) то все работает.

Автор - Ivanius
Дата добавления - 01.11.2014 в 17:48
Ivanius Дата: Среда, 05.11.2014, 14:28 | Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 14
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
Расскажу все о такой штуке крутой как SELENIUM - делает все намного проще по поводу заполнения и отправки информации на сайт.... очень рекомендую, может даже записывать сразу готовый макрос на нескольких языках!!! https://code.google.com/p/selenium-vba/ - тут вся инфа
 
Ответить
СообщениеРасскажу все о такой штуке крутой как SELENIUM - делает все намного проще по поводу заполнения и отправки информации на сайт.... очень рекомендую, может даже записывать сразу готовый макрос на нескольких языках!!! https://code.google.com/p/selenium-vba/ - тут вся инфа

Автор - Ivanius
Дата добавления - 05.11.2014 в 14:28
SkyPro Дата: Четверг, 06.11.2014, 00:27 | Сообщение № 7
Группа: Друзья
Ранг: Старожил
Сообщений: 1206
Репутация: 255 ±
Замечаний: 0% ±

2010
А почему POST не проходит? Может не все заголовки отправляете?


skypro1111@gmail.com
 
Ответить
СообщениеА почему POST не проходит? Может не все заголовки отправляете?

Автор - SkyPro
Дата добавления - 06.11.2014 в 00:27
Ivanius Дата: Пятница, 07.11.2014, 00:24 | Сообщение № 8
Группа: Пользователи
Ранг: Новичок
Сообщений: 14
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
там HTTPS и SSL думаю поэтому, прямо с записи браузера отправлял (заголовки которые браузер записал)
 
Ответить
Сообщениетам HTTPS и SSL думаю поэтому, прямо с записи браузера отправлял (заголовки которые браузер записал)

Автор - Ivanius
Дата добавления - 07.11.2014 в 00:24
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Отправка файла или его указание в окне выбора IE, upload (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!