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

Вход

Регистрация

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

 

= Мир MS Excel/Импорт данных - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, китин  
Импорт данных
terat Дата: Среда, 25.03.2020, 06:42 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 20
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Доброго дня!
Задача: Есть 3 источника о прогнозе погоды и один источник с историей фактической температуры. Смысл в том что нужно выяснить какой из источников более корректен. Изначально нужно импортировать данные о прогнозе погоды с разных источников в таблицу, на первом листе. Сделал так:
Код
=IMPORTHTML("http://www.meteocenter.asia/?m=e&p=28698","table",1 )


Периодически (раз в сутки) сохранять импортированные значения с этих самых разных источников, на другом одном листе.
Под словом "сохранять" я имею в виду, каждый день, оставлять прошлые значения и добавлять обновлённые.
Алгоритм работы в теории:
Допустим, сегодня вторник, 24.03
1. Берем значения максимальной, минимальной и средней температуры на сегодня за 24.03
2. Сохраняем эти значения на листе 2.
После обновления данных, у источника погоды. На уже наступившее завтра, 25.03
1. Берем значения максимальной, минимальной и средней температуры на 25.03
2. Записываем на лист2 не вместо прошлых значений, а со сдвигом, в следующем столбце.

Получается на листе1 постоянно указывается только прогноз погоды. А на листе2 история + сегодня.


Сообщение отредактировал terat - Среда, 25.03.2020, 12:33
 
Ответить
СообщениеДоброго дня!
Задача: Есть 3 источника о прогнозе погоды и один источник с историей фактической температуры. Смысл в том что нужно выяснить какой из источников более корректен. Изначально нужно импортировать данные о прогнозе погоды с разных источников в таблицу, на первом листе. Сделал так:
Код
=IMPORTHTML("http://www.meteocenter.asia/?m=e&p=28698","table",1 )


Периодически (раз в сутки) сохранять импортированные значения с этих самых разных источников, на другом одном листе.
Под словом "сохранять" я имею в виду, каждый день, оставлять прошлые значения и добавлять обновлённые.
Алгоритм работы в теории:
Допустим, сегодня вторник, 24.03
1. Берем значения максимальной, минимальной и средней температуры на сегодня за 24.03
2. Сохраняем эти значения на листе 2.
После обновления данных, у источника погоды. На уже наступившее завтра, 25.03
1. Берем значения максимальной, минимальной и средней температуры на 25.03
2. Записываем на лист2 не вместо прошлых значений, а со сдвигом, в следующем столбце.

Получается на листе1 постоянно указывается только прогноз погоды. А на листе2 история + сегодня.

Автор - terat
Дата добавления - 25.03.2020 в 06:42
Kashimirush Дата: Среда, 25.03.2020, 07:51 | Сообщение № 2
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 240
Репутация: 41 ±
Замечаний: 0% ±

Excel 2010
Читайте правила форума, один вопрос - одна тема.
Если ваш вопрос:
Можно ли это сделать в Google Docs?

Ответ да можно.
Создайте конкретный пример и начните делать, на затыках задавайте вопросы, что вам не понятно.
Если вам нужно готовое решение вам на ветку: Работа

[p.s.]
Импортировать данные о прогнозе погоды с разных источников в таблицу.
Тут вам помогут IMPORTHTML и IMPORTXML, если источники это сайты или IMPORTRANGE если источники это таблицы гугл
2/3 - можно решить написав скрипт в google apps script


Работа, работа, перейди на Федота...
 
Ответить
СообщениеЧитайте правила форума, один вопрос - одна тема.
Если ваш вопрос:
Можно ли это сделать в Google Docs?

Ответ да можно.
Создайте конкретный пример и начните делать, на затыках задавайте вопросы, что вам не понятно.
Если вам нужно готовое решение вам на ветку: Работа

[p.s.]
Импортировать данные о прогнозе погоды с разных источников в таблицу.
Тут вам помогут IMPORTHTML и IMPORTXML, если источники это сайты или IMPORTRANGE если источники это таблицы гугл
2/3 - можно решить написав скрипт в google apps script

Автор - Kashimirush
Дата добавления - 25.03.2020 в 07:51
terat Дата: Среда, 25.03.2020, 08:24 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 20
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Читайте правила форума, один вопрос - одна тема.

У меня один вопрос, одна тема, одно задание. Которое имеет связь из трех подпунктов которые описал.

Источники сайты, IMPORTHTML использую.
Пример:
Таблица которая есть у источника (сайта):
A, B, C
1 +10 +11 +15
2 +10 +9 +12
3 +11 +7 +6
Таких источников 3.
Ее же и импортировал на лист1.

Значения у источника актуальны на сегодня, завтра значения поменяются, и значения будут обновлены на листе1. Необходимо записать на лист2 и старые значения и новые.
Так же есть источник сайт с историей погоды. И от туда по такому же принципу необходимо записывать значения и сравнивать с источниками погоды.

Вопрос как произвести запись значений, ведь при простой ссылке значение обновится и там и там. И как правильнее производить подобные сравнения (я имею ввиду у источника1 +10, у источника2 +11, а у источника3 +10, а по факту было +10 тогда прав источник 3 и 1, и их нужно как-то отметить.

Или у меня вопрос большой, не конкретный и требует темы в ветке фриланса?)
 
Ответить
Сообщение
Читайте правила форума, один вопрос - одна тема.

У меня один вопрос, одна тема, одно задание. Которое имеет связь из трех подпунктов которые описал.

Источники сайты, IMPORTHTML использую.
Пример:
Таблица которая есть у источника (сайта):
A, B, C
1 +10 +11 +15
2 +10 +9 +12
3 +11 +7 +6
Таких источников 3.
Ее же и импортировал на лист1.

Значения у источника актуальны на сегодня, завтра значения поменяются, и значения будут обновлены на листе1. Необходимо записать на лист2 и старые значения и новые.
Так же есть источник сайт с историей погоды. И от туда по такому же принципу необходимо записывать значения и сравнивать с источниками погоды.

Вопрос как произвести запись значений, ведь при простой ссылке значение обновится и там и там. И как правильнее производить подобные сравнения (я имею ввиду у источника1 +10, у источника2 +11, а у источника3 +10, а по факту было +10 тогда прав источник 3 и 1, и их нужно как-то отметить.

Или у меня вопрос большой, не конкретный и требует темы в ветке фриланса?)

Автор - terat
Дата добавления - 25.03.2020 в 08:24
Kashimirush Дата: Среда, 25.03.2020, 08:47 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 240
Репутация: 41 ±
Замечаний: 0% ±

Excel 2010
terat, У вас 3 вопроса по разным темам, по сути три ветки, если с импортом разобрались, по второму вопросу:
Вопрос как произвести запись значений


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


Работа, работа, перейди на Федота...
 
Ответить
Сообщениеterat, У вас 3 вопроса по разным темам, по сути три ветки, если с импортом разобрались, по второму вопросу:
Вопрос как произвести запись значений


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

Автор - Kashimirush
Дата добавления - 25.03.2020 в 08:47
китин Дата: Среда, 25.03.2020, 08:52 | Сообщение № 5
Группа: Модераторы
Ранг: Экселист
Сообщений: 7029
Репутация: 1078 ±
Замечаний: 0% ±

Excel 2007;2010;2016
У меня один вопрос

у вас ТРИ разных вопроса. Все в одной теме.
- п.4 Правил форума: один вопрос - одна тема
Отредактируйте плиз ваше первое сообщение
Помогающим просьба воздержаться от ответов в этой теме до исправления замечания


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852
 
Ответить
Сообщение
У меня один вопрос

у вас ТРИ разных вопроса. Все в одной теме.
- п.4 Правил форума: один вопрос - одна тема
Отредактируйте плиз ваше первое сообщение
Помогающим просьба воздержаться от ответов в этой теме до исправления замечания

Автор - китин
Дата добавления - 25.03.2020 в 08:52
terat Дата: Среда, 25.03.2020, 12:39 | Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 20
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Ну куда деваться. Помощь нужна мне все таки, а не вам.
p.s. убрал третий пункт, и подчеркнул что первый пункт это не вопрос, я хотел лишь алгоритм объяснить.
p.p.s ну и дополнил, а то как показалось я не достаточно подробно изложил вопрос.

Т.к. Примера конкретной тестовой таблицы вы не предоставили , ответ будет выглядеть как направление куда вам двигаться дальше:

Видео толковое, давно все пересмотрел по этой теме на канале. Ответа к сожалению не нашел, или не понял автора, но много полезного все равно почерпнул. Первое сообщение дополнил.
 
Ответить
СообщениеНу куда деваться. Помощь нужна мне все таки, а не вам.
p.s. убрал третий пункт, и подчеркнул что первый пункт это не вопрос, я хотел лишь алгоритм объяснить.
p.p.s ну и дополнил, а то как показалось я не достаточно подробно изложил вопрос.

Т.к. Примера конкретной тестовой таблицы вы не предоставили , ответ будет выглядеть как направление куда вам двигаться дальше:

Видео толковое, давно все пересмотрел по этой теме на канале. Ответа к сожалению не нашел, или не понял автора, но много полезного все равно почерпнул. Первое сообщение дополнил.

Автор - terat
Дата добавления - 25.03.2020 в 12:39
Kashimirush Дата: Среда, 25.03.2020, 12:51 | Сообщение № 7
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 240
Репутация: 41 ±
Замечаний: 0% ±

Excel 2010
Ответа к сожалению не нашел

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


Работа, работа, перейди на Федота...
 
Ответить
Сообщение
Ответа к сожалению не нашел

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

Автор - Kashimirush
Дата добавления - 25.03.2020 в 12:51
terat Дата: Среда, 25.03.2020, 13:10 | Сообщение № 8
Группа: Пользователи
Ранг: Новичок
Сообщений: 20
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Вот это до меня не дошло по видео, не понимаю как это работает.
просто нужно подкрутить скрипт под вашу таблицу и установить триггер на нужное время.


Таблица вот: https://docs.google.com/spreads....sharing
Она открыта, лист2 это то куда нужно все и записывать. Как заставить записывать значения со сдвигом? Вот на листе 2 дата есть за 25 число, на сегодня 25, т.е. макрос должен записать значение за сегодня, а завтра сдвинуться вправо и сделать запись там и так далее.
 
Ответить
СообщениеВот это до меня не дошло по видео, не понимаю как это работает.
просто нужно подкрутить скрипт под вашу таблицу и установить триггер на нужное время.


Таблица вот: https://docs.google.com/spreads....sharing
Она открыта, лист2 это то куда нужно все и записывать. Как заставить записывать значения со сдвигом? Вот на листе 2 дата есть за 25 число, на сегодня 25, т.е. макрос должен записать значение за сегодня, а завтра сдвинуться вправо и сделать запись там и так далее.

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

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

Скрытые строки - пока не нужна информация. Тоже для упрощения задачи.


Сообщение отредактировал terat - Среда, 25.03.2020, 13:20
 
Ответить
СообщениеДанные то из трех источников берутся, пока взял для примера один, чтобы понять как это все дело работает, если пойму с одним источником как происходит запись, то два других добавить не вопрос. Не добавлял для упрощения задачи.

Скрытые строки - пока не нужна информация. Тоже для упрощения задачи.

Автор - terat
Дата добавления - 25.03.2020 в 13:20
Kashimirush Дата: Среда, 25.03.2020, 13:51 | Сообщение № 10
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 240
Репутация: 41 ±
Замечаний: 0% ±

Excel 2010
terat,
Зайдите инструменты редактор скриптов, запустите скрипт Copy и посмотри что получится, вроде так вы хотели. Если в редакторе скриптов нажатьна символ часов, можно данному скрипту поставить триггер (каждый день, каждый час и т.д.) - там все понятно.
Не добавлял для упрощения задачи.

Тут , конечно, да задачу упростили, но боюсь когда добавите 2 других таблицы задача усложнится, потому что, я сомневаюсь что формат таблиц одинаковый на разных сайтах и скрипт превратиться в минное поле, где ошибешься на единичку в каком нибудь диапазоне и все пойдет коту под хвост.
[p.s.]Заметьте, как странно со звездочками импортируются данные с ними сложно будет работать, т.к. по умолчанию они идут как текст, советую изучить IMPORTXML и попытаться выудить каждое значение отдельно в нужную ячейку.


Работа, работа, перейди на Федота...
 
Ответить
Сообщениеterat,
Зайдите инструменты редактор скриптов, запустите скрипт Copy и посмотри что получится, вроде так вы хотели. Если в редакторе скриптов нажатьна символ часов, можно данному скрипту поставить триггер (каждый день, каждый час и т.д.) - там все понятно.
Не добавлял для упрощения задачи.

Тут , конечно, да задачу упростили, но боюсь когда добавите 2 других таблицы задача усложнится, потому что, я сомневаюсь что формат таблиц одинаковый на разных сайтах и скрипт превратиться в минное поле, где ошибешься на единичку в каком нибудь диапазоне и все пойдет коту под хвост.
[p.s.]Заметьте, как странно со звездочками импортируются данные с ними сложно будет работать, т.к. по умолчанию они идут как текст, советую изучить IMPORTXML и попытаться выудить каждое значение отдельно в нужную ячейку.

Автор - Kashimirush
Дата добавления - 25.03.2020 в 13:51
terat Дата: Среда, 25.03.2020, 16:57 | Сообщение № 11
Группа: Пользователи
Ранг: Новичок
Сообщений: 20
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Спасибо!
На счет звездочек и формата вывода, не задумывался. Попробую сейчас что-то сделать
 
Ответить
СообщениеСпасибо!
На счет звездочек и формата вывода, не задумывался. Попробую сейчас что-то сделать

Автор - terat
Дата добавления - 25.03.2020 в 16:57
Kashimirush Дата: Четверг, 26.03.2020, 07:44 | Сообщение № 12
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 240
Репутация: 41 ±
Замечаний: 0% ±

Excel 2010
На счет звездочек и формата вывода

Указал примечания на Лист1, как можно сделать.

Итоговый скрипт, для 3х источников будет выглядеть так:

[vba]
Код
function Copy() {
  //Получаем доступ к активной таблице
  var spreadsheet = SpreadsheetApp.getActive();
  //Лист откуда копируем
  var sheet1 = spreadsheet.getSheetByName('Лист1');
  //Лист куда вставляем
  var sheet2 = spreadsheet.getSheetByName('Лист2');
  //Указывем колонку перед которой добавится еще одна
  var trigger = sheet2.getRange('B1').getColumn();
  //Берем значения из целевого листа и нужного диапазона
  var CopyRange = sheet1.getRange('B1:D5').getValues();
  //Определяем диапазон куда будем вставлять полученные данные
  var PastRange = sheet2.getRange('B1:D5');
  //Вставляем колонку
  sheet2.insertColumnsBefore(trigger, 3);
  //Вставляем значения
  PastRange.setValues(CopyRange);
}
[/vba]


Работа, работа, перейди на Федота...
 
Ответить
Сообщение
На счет звездочек и формата вывода

Указал примечания на Лист1, как можно сделать.

Итоговый скрипт, для 3х источников будет выглядеть так:

[vba]
Код
function Copy() {
  //Получаем доступ к активной таблице
  var spreadsheet = SpreadsheetApp.getActive();
  //Лист откуда копируем
  var sheet1 = spreadsheet.getSheetByName('Лист1');
  //Лист куда вставляем
  var sheet2 = spreadsheet.getSheetByName('Лист2');
  //Указывем колонку перед которой добавится еще одна
  var trigger = sheet2.getRange('B1').getColumn();
  //Берем значения из целевого листа и нужного диапазона
  var CopyRange = sheet1.getRange('B1:D5').getValues();
  //Определяем диапазон куда будем вставлять полученные данные
  var PastRange = sheet2.getRange('B1:D5');
  //Вставляем колонку
  sheet2.insertColumnsBefore(trigger, 3);
  //Вставляем значения
  PastRange.setValues(CopyRange);
}
[/vba]

Автор - Kashimirush
Дата добавления - 26.03.2020 в 07:44
terat Дата: Пятница, 27.03.2020, 05:34 | Сообщение № 13
Группа: Пользователи
Ранг: Новичок
Сообщений: 20
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Спасибо!
Буду пробовать собрать теперь все вместе.


Сообщение отредактировал terat - Пятница, 27.03.2020, 05:39
 
Ответить
СообщениеСпасибо!
Буду пробовать собрать теперь все вместе.

Автор - terat
Дата добавления - 27.03.2020 в 05:34
  • Страница 1 из 1
  • 1
Поиск:

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