расчет мощности в заданые часы

Автор mixail64, 12.09.2018, 22:46

« назад - далее »

boa

Добрый день,
попробую в картинках объяснить на вашем примере.
После преобразования ваших таблиц в умные(ниже я писал как это делается) формируем сводную таблицу (Clip1.jpg)
В качестве источника данных выбираем коннекты (Clip2.jpg)
В открывшемся окне окне выбираем вкладку Таблицы (Clip3.jpg)
В ней вы увидите имеющиеся в данной книге "Умные таблицы"
Выбираем любую, это сейчас не столь важно.
Ничто не обходится нам так дешево и не ценится так дорого, как вежливость...  Мигель Сервантес де Сааведра

boa

нажимаем "ОК" и расставляем поля.
В свойствах таблицы выбираем "Все" (Clip4.jpg) и у Вас появятся все умные таблицы.
После добавления поля из второй таблицы, появится окно установки связей.
Не доверяйте автоматической установке и нажмите "Создать"
Выберите связи как на рисунке Clip5.jpg
Дальше смотрите в файле.
Формулы, которые я переписал, выделил зеленым.
На странице "отчет" показал как использовать ссылки на умные таблицы и пользоваться именованными диапазонами, которые предварительно создал на странице "СН2"
Ничто не обходится нам так дешево и не ценится так дорого, как вежливость...  Мигель Сервантес де Сааведра

mixail64

Огромное спасибо за такое подробное объяснение!!!!!

mixail64

Уважаемый boa. Я думаю причина моего непонимания в Excel 2010. Я делаю умные таблицы, перехожу в формирование сводных таблиц, выбираю внешний источник данных, выбираю подключение, а там пусто. И на этом останавливаюсь. Создание модели с помощью Power Query тоже не дало результата. В каком Excel делаете вы?

boa

я работаю в 2013 и 365-м офисах
завтра попробую сделать для вас другим способом. Но там надо будет немного знать SQL и VBA
ну нет у меня 2010-го :) не могу проверить
Ничто не обходится нам так дешево и не ценится так дорого, как вежливость...  Мигель Сервантес де Сааведра

boa

Цитата: mixail64 от 19.09.2018, 15:43
выбираю внешний источник данных, выбираю подключение, а там пусто.
А вкладка Таблицы у вас есть(Clip3.jpg)? она тоже пустая?
Ничто не обходится нам так дешево и не ценится так дорого, как вежливость...  Мигель Сервантес де Сааведра

mixail64

Нет даже вкладки "Таблица" только "Существующие подключения"

mixail64

это фото экранов

boa

Добавил в файл макрос и форму
Для создания нового коннекта запустите макрос AddCoonectToTables

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

boa

#24
А вот и сам файл
    Следующая строка должна создавать сводную таблицу на основе созданного коннекта, но не работает
    выдает ошибку "Потеряна связь с Microsoft Excel для просмотра присоединенных листов". Причину нагуглить не смог :(
    Может кто-то знает причину и поможет отредактировать.
    ThisWorkbook.PivotCaches.Create(SourceType:=xlExternal, SourceData:=NewConn).CreatePivotTable TableDestination:=Selection(1)

P.S.
Цитата: boa от 13.09.2018, 14:40
Такие вещи проще делать сводной таблицей
Да уж, не получилось "проще" :)
Ничто не обходится нам так дешево и не ценится так дорого, как вежливость...  Мигель Сервантес де Сааведра

mixail64

#25
Да все совсем не просто. Сделал как написано, все получилось и пришел к той же ошибке

boa

Цитата: mixail64 от 21.09.2018, 16:35
...все получилось и пришел к той же ошибке
что опять не так?
Ничто не обходится нам так дешево и не ценится так дорого, как вежливость...  Мигель Сервантес де Сааведра

mixail64

Нет все получилось, то компьютер глюкнул. А так при смене часов все пересчитывает, т.е. то что мне хотелось. Благодаря Вам я узнал много нового. Огромное Вам спасибо!!!

mixail64

А вообще это для сравнения стоимости электроэнергии по ценовым категориям, может еще кому то понадобится.

boa

#29
А вообще, суть решения была в построение сводной таблицы из двух диапазонов
тема избитая...
может, как-то я этот макрос доработаю..., выложу в готовые решения. Идей много.
сейчас у меня есть макрос который создает OLEDB-коннекты для экселевских, текстовых и аксесовских файлов. sql'ку я потом дописываю ручками. а вот вариант с программным созданием sql-запроса, думаю, имеет путевку в жизнь...
если тема интересна - пишите комменты или в личку
Ничто не обходится нам так дешево и не ценится так дорого, как вежливость...  Мигель Сервантес де Сааведра