Парсинг координат из Yandex и Google. Дополнение к макросу.

Чек-лист по основным проблемам, возникающим при работе с данным макросом, и способам их решения.


Макрос «Получение адреса и координат из Yandex и Google» - один из самых популярных и обсуждаемых на сайте. Некоторые пользователи пишут в комментариях и мне на почту, что макрос не работает или перестал работать.

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

Чтобы помочь вам разобраться в основных причинах, влияющих на работоспособность макроса, создана текущая страница и сформирован чек-лист основных проблем, влияющих на функциональность макроса, и способов их устранения. Чек-лист разделен на группы проблем и отсортирован сверху-вниз по важности (влиянию) возможной причины.


1. Проверьте, актуальность версии используемого вами макроса. Актуальная и рабочая на данный момент версия - "GeoYandexGoogle, v.4.3.xlsb"
2. Операционная система и версия офисного пакета

2.1. Макрос разрабатывался и тестировался только под ОС Windows 7 и выше. Если у вас ОС отличная от Windows, то к сожалению, помочь не смогу.
2.2. Макрос разрабатывался и тестировался только под MS Office версии 2007 и выше. Если у вас MS Office 2003 или иной офисный пакет, то к сожалению, помочь не смогу.

3. Настройки макроса

3.1. Убедитесь, что файл открыт с поддержкой макросов.
3.2. Работу файла проверяйте исключительно на адресах, указанных в файле макроса.
3.3. Убедитесь, что в настройках макроса (лист "настройки") вы указали API ключ, полученный в Yandex либо Google.
Видео с инструкцией, как подключить нужный API Yandex: ссылка.
3.4. Убедитесь, не перепутана ячейка на листе "настройки", в которую вставлен API ключ. Для Yandex - это ячейка B2, для Google - ячейка B3.
3.5. Если макрос работает частично (т.е. по каким-то строкам выдает результат, а по каким-то нет), попробуйте в настройках макроса увеличить время паузы между запросами. Сейчас пауза 0.5 секунд. Править нужно в процедуре "StartMacro", строка: Application.Wait Time:=Now + TimeSerial(0, 0, 0.5)

4. Влияние прочих программ, а также системных и сетевых настроек

4.1. Проверьте, не блокирует ли ваш файервол и/или антивирус интернет трафик с Yandex/Google.
4.2. Проверьте, не работаете ли вы через прокси (зачастую подобное подключение реализовано в корпоративных сетях).
4.3. Проверьте работу макроса на другом компьютере и на другом интернет канале (как вариант, можно "раздать" интернет со смартфона).

5. Ограничения сервиса Yandex/Google

5.1. Убедитесь, что с момента создания вашего API ключа прошло не менее 5 часов.
5.2. Проверьте в Yandex/Google, что бесплатный суточный лимит вашего API ключа еще не исчерпан.
5.3. Убедитесь, что API ключ у вас получен именно «JavaScript API и HTTP Геокодер» (если для Yandex).

6. Лично мной не проверялось, но по мнению некоторых пользователей помогает

6.1. В файле макроса, на листе "настройки", формат ячеек B2:B3 измените на "Общий".
6.2. В коде макроса в функции YandexXML в строке запроса значение "http://" замените на "https://"
6.3. Попробуйте "разогреть" ваш API ключ. То есть сперва запустите макрос только на данных, указанных в файле. Далее примерно за 5-10 запусков постепенно увеличивайте набор ваших данных.



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

В форме ниже просто укажите сумму, которую готовы отправить, тип оплаты (яндекс кошелек или б/карта) и произвольный комментарий. Полученные средства пойдут на развитие сайта и написание других интересных и полезных программ.



Если же все сделано правильно и по указанному выше чек-листу все корректно, но проблема сохраняется, присылайте мне на почту info@excelstore.pro следующую информацию:

1. Эксель файл макроса, где на листе "настройки" должен быть указан используемый вами API ключ.
2. Скриншот основной ошибки и скриншот подсвеченной строки макроса после нажатия кнопки DEBUG (если ошибка имеет место).
3. Скриншот браузера с существующим результатом отображения страницы:
http://geocode-maps.yandex.ru/1.x/?apikey=[API_KEY]&geocode=москва&format=xml&lang=ru_RU&results=1
где вместо [API_KEY] должен быть указан ваш ключ.


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