Макрос отказывается выполняться 
				   
 
 
 Vertep7  
 Дата: Четверг, 04.01.2024, 00:23 | 
 Сообщение № 1     
   
 
   
 
 
 Группа: Пользователи  
 
 
 Ранг: Участник  
 
 Сообщений:  57 
 
 
 
 
  Репутация:    
 0    
 ±  
 
  
 Замечаний:
 20%   ±  
   Excel 2007          
  
 
 
 Уважаемые форумчане объясните почему не исполняется указанный макрос. Перебрал некоторые библиотеки и на всякий случай сменил Офис с 7 на 16, чтобы проверить может дело в версии Эксель, но проблема осталась та же. Затык начинается со строки "Sheets(1).Range(B2).Value" Хотя у его создателя, как я понимаю, он работает прекрасно. Ссылка на статью  [vba]Код
Sub Weather() Dim xmlhttp As New MSXML2.XMLHTTP60 Dim xmlresponse As MSXML2.DOMDocument60 Dim myurl As String myurl = "http://api.openweathermap.org/data/2.5/weather?apikey=4a2360d14bf33378079d2e2d49e35ddb&mode=xml&units=metric&q=Moscow" xmlhttp.Open "GET", myurl, False xmlhttp.send Set xmlresponse = xmlhttp.responseXML Sheets(1).Range(B2).Value = xmlresponse.SelectNodes("//current/temperature/@value")(0).Text Sheets(1).Range(B3).Value = xmlresponse.SelectNodes("//current/precipitation/@mode")(0).Text Sheets(1).Range(B4).Value = xmlresponse.SelectNodes("//current/wind/speed/@name")(0).Text End Sub
 [/vba]  
 
 
Уважаемые форумчане объясните почему не исполняется указанный макрос. Перебрал некоторые библиотеки и на всякий случай сменил Офис с 7 на 16, чтобы проверить может дело в версии Эксель, но проблема осталась та же. Затык начинается со строки "Sheets(1).Range(B2).Value" Хотя у его создателя, как я понимаю, он работает прекрасно. Ссылка на статью  [vba]Код
Sub Weather() Dim xmlhttp As New MSXML2.XMLHTTP60 Dim xmlresponse As MSXML2.DOMDocument60 Dim myurl As String myurl = "http://api.openweathermap.org/data/2.5/weather?apikey=4a2360d14bf33378079d2e2d49e35ddb&mode=xml&units=metric&q=Moscow" xmlhttp.Open "GET", myurl, False xmlhttp.send Set xmlresponse = xmlhttp.responseXML Sheets(1).Range(B2).Value = xmlresponse.SelectNodes("//current/temperature/@value")(0).Text Sheets(1).Range(B3).Value = xmlresponse.SelectNodes("//current/precipitation/@mode")(0).Text Sheets(1).Range(B4).Value = xmlresponse.SelectNodes("//current/wind/speed/@name")(0).Text End Sub
 [/vba] Vertep7  
 
Сообщение отредактировал Vertep7  - Четверг, 04.01.2024, 00:24 
  
  
  
 Ответить 
Сообщение Уважаемые форумчане объясните почему не исполняется указанный макрос. Перебрал некоторые библиотеки и на всякий случай сменил Офис с 7 на 16, чтобы проверить может дело в версии Эксель, но проблема осталась та же. Затык начинается со строки "Sheets(1).Range(B2).Value" Хотя у его создателя, как я понимаю, он работает прекрасно. Ссылка на статью  [vba]Код
Sub Weather() Dim xmlhttp As New MSXML2.XMLHTTP60 Dim xmlresponse As MSXML2.DOMDocument60 Dim myurl As String myurl = "http://api.openweathermap.org/data/2.5/weather?apikey=4a2360d14bf33378079d2e2d49e35ddb&mode=xml&units=metric&q=Moscow" xmlhttp.Open "GET", myurl, False xmlhttp.send Set xmlresponse = xmlhttp.responseXML Sheets(1).Range(B2).Value = xmlresponse.SelectNodes("//current/temperature/@value")(0).Text Sheets(1).Range(B3).Value = xmlresponse.SelectNodes("//current/precipitation/@mode")(0).Text Sheets(1).Range(B4).Value = xmlresponse.SelectNodes("//current/wind/speed/@name")(0).Text End Sub
 [/vba] Автор - Vertep7  Дата добавления - 04.01.2024  в 00:23   
 
 
 jun  
 Дата: Четверг, 04.01.2024, 12:48 | 
 Сообщение № 2     
   
 
   
 
 
 Группа: Проверенные  
 
 
 Ранг: Форумчанин  
 
 Сообщений:  145 
 
 
 
 
  Репутация:    
 43    
 ±  
 
  
 Замечаний:
 0%   ±  
             
  
 
 
 Очевидно, что проблема в отсутствии кавычек в названиях диапазонов, в строках: [vba]Код
Sheets(1).Range(B2).Value = xmlresponse.SelectNodes("//current/temperature/@value")(0).Text Sheets(1).Range(B3).Value = xmlresponse.SelectNodes("//current/precipitation/@mode")(0).Text Sheets(1).Range(B4).Value = xmlresponse.SelectNodes("//current/wind/speed/@name")(0).Text
 [/vba] их нужно добавить: [vba]Код
Sheets(1).Range("B2").Value = xmlresponse.SelectNodes("//current/temperature/@value")(0).Text Sheets(1).Range("B3").Value = xmlresponse.SelectNodes("//current/precipitation/@mode")(0).Text Sheets(1).Range"(B4").Value = xmlresponse.SelectNodes("//current/wind/speed/@name")(0).Text
 [/vba]  
 
 
Очевидно, что проблема в отсутствии кавычек в названиях диапазонов, в строках: [vba]Код
Sheets(1).Range(B2).Value = xmlresponse.SelectNodes("//current/temperature/@value")(0).Text Sheets(1).Range(B3).Value = xmlresponse.SelectNodes("//current/precipitation/@mode")(0).Text Sheets(1).Range(B4).Value = xmlresponse.SelectNodes("//current/wind/speed/@name")(0).Text
 [/vba] их нужно добавить: [vba]Код
Sheets(1).Range("B2").Value = xmlresponse.SelectNodes("//current/temperature/@value")(0).Text Sheets(1).Range("B3").Value = xmlresponse.SelectNodes("//current/precipitation/@mode")(0).Text Sheets(1).Range"(B4").Value = xmlresponse.SelectNodes("//current/wind/speed/@name")(0).Text
 [/vba] jun  
 
  
  
  
 Ответить 
Сообщение Очевидно, что проблема в отсутствии кавычек в названиях диапазонов, в строках: [vba]Код
Sheets(1).Range(B2).Value = xmlresponse.SelectNodes("//current/temperature/@value")(0).Text Sheets(1).Range(B3).Value = xmlresponse.SelectNodes("//current/precipitation/@mode")(0).Text Sheets(1).Range(B4).Value = xmlresponse.SelectNodes("//current/wind/speed/@name")(0).Text
 [/vba] их нужно добавить: [vba]Код
Sheets(1).Range("B2").Value = xmlresponse.SelectNodes("//current/temperature/@value")(0).Text Sheets(1).Range("B3").Value = xmlresponse.SelectNodes("//current/precipitation/@mode")(0).Text Sheets(1).Range"(B4").Value = xmlresponse.SelectNodes("//current/wind/speed/@name")(0).Text
 [/vba] Автор - jun  Дата добавления - 04.01.2024  в 12:48   
 
 
 Vertep7  
 Дата: Четверг, 04.01.2024, 17:47 | 
 Сообщение № 3     
   
 
   
 
 
 Группа: Пользователи  
 
 
 Ранг: Участник  
 
 Сообщений:  57 
 
 
 
 
  Репутация:    
 0    
 ±  
 
  
 Замечаний:
 20%   ±  
   Excel 2007          
  
 
 
 Ура, заработало. Но нужно обязательно подключить библиотеку Microsoft XML v 3.0, без неё не будет работать. Плохо когда скрипт не работает всего лишь из-за какой-то мелочи, из-за чего приходится перерывать весь интернет в поисках решения, думая что проблема серьезней. 
 
 
Ура, заработало. Но нужно обязательно подключить библиотеку Microsoft XML v 3.0, без неё не будет работать. Плохо когда скрипт не работает всего лишь из-за какой-то мелочи, из-за чего приходится перерывать весь интернет в поисках решения, думая что проблема серьезней. Vertep7  
 
  
  
  
 Ответить 
Сообщение Ура, заработало. Но нужно обязательно подключить библиотеку Microsoft XML v 3.0, без неё не будет работать. Плохо когда скрипт не работает всего лишь из-за какой-то мелочи, из-за чего приходится перерывать весь интернет в поисках решения, думая что проблема серьезней. Автор - Vertep7  Дата добавления - 04.01.2024  в 17:47   
 
 
 doober  
 Дата: Четверг, 04.01.2024, 20:00 | 
 Сообщение № 4     
   
 
  
   
 
 
 Группа: Друзья  
 
 
 Ранг: Ветеран  
 
 Сообщений:  995 
 
 
 
 
  Репутация:    
 345    
 ±  
 
  
 Замечаний:
 0%   ±  
   Excel 2010          
  
 
 
 Особенно, если в оригинале все правильно  
 
 
Особенно, если в оригинале все правильно doober  
 
 
 
Сообщение отредактировал doober  - Четверг, 04.01.2024, 20:01 
  
  
  
 Ответить 
Сообщение Особенно, если в оригинале все правильно Автор - doober  Дата добавления - 04.01.2024  в 20:00   
 
 
 Vertep7  
 Дата: Суббота, 06.01.2024, 20:19 | 
 Сообщение № 5     
   
 
   
 
 
 Группа: Пользователи  
 
 
 Ранг: Участник  
 
 Сообщений:  57 
 
 
 
 
  Репутация:    
 0    
 ±  
 
  
 Замечаний:
 20%   ±  
   Excel 2007          
  
 
 
 Особенно, если в оригинале все правильно
 Изначально было два образца из которых был сделан набросок, но в каждом, как оказалось, была своя ошибка, в одном не забит город, во втором не было кавычек. 
 
 
Особенно, если в оригинале все правильно
 Изначально было два образца из которых был сделан набросок, но в каждом, как оказалось, была своя ошибка, в одном не забит город, во втором не было кавычек.Vertep7  
 
Сообщение отредактировал Vertep7  - Суббота, 06.01.2024, 20:24 
  
  
  
 Ответить 
Сообщение Особенно, если в оригинале все правильно
 Изначально было два образца из которых был сделан набросок, но в каждом, как оказалось, была своя ошибка, в одном не забит город, во втором не было кавычек.Автор - Vertep7  Дата добавления - 06.01.2024  в 20:19