Результаты поиска
krosav4ig
Дата: Суббота, 22.06.2019, 17:16 |
Сообщение № 261 | Тема: Скопировать связку табличка + график.
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Доброго [vba]Код
Sub x() Dim r As Range With [Таблица1[#all]] Set r = .Offset(.Rows.Count + 1)(1, 1) .Copy r: r.ListObject.Name = "Таблица2" End With With [Диаграмма 1].Duplicate .Top = .BottomRightCell.Offset(1).Top .Left = .Left - 12 .Name = "Диаграмма 2" .Chart.SetSourceData [Таблица2] End With End Sub
[/vba]
Доброго [vba]Код
Sub x() Dim r As Range With [Таблица1[#all]] Set r = .Offset(.Rows.Count + 1)(1, 1) .Copy r: r.ListObject.Name = "Таблица2" End With With [Диаграмма 1].Duplicate .Top = .BottomRightCell.Offset(1).Top .Left = .Left - 12 .Name = "Диаграмма 2" .Chart.SetSourceData [Таблица2] End With End Sub
[/vba] krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Суббота, 22.06.2019, 17:16
Ответить
Сообщение Доброго [vba]Код
Sub x() Dim r As Range With [Таблица1[#all]] Set r = .Offset(.Rows.Count + 1)(1, 1) .Copy r: r.ListObject.Name = "Таблица2" End With With [Диаграмма 1].Duplicate .Top = .BottomRightCell.Offset(1).Top .Left = .Left - 12 .Name = "Диаграмма 2" .Chart.SetSourceData [Таблица2] End With End Sub
[/vba] Автор - krosav4ig Дата добавления - 22.06.2019 в 17:16
krosav4ig
Дата: Суббота, 22.06.2019, 15:43 |
Сообщение № 262 | Тема: Отобржение заливки ячейки по формату с другого Листа
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
А еще можно UDF дя этого использовать
А еще можно UDF дя этого использовать krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение А еще можно UDF дя этого использовать Автор - krosav4ig Дата добавления - 22.06.2019 в 15:43
krosav4ig
Дата: Четверг, 20.06.2019, 18:40 |
Сообщение № 263 | Тема: Связь ячеек в столбце с случайной генерацией.
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
speaky , у вас в настройках разрешены макросы? нажмите по очереди клавиши F10 ЕМБ Должно быть отмечено Разрешить макросы upd.Скопировал в новый файл и ошибка вместо значений
Копировать нужно вместе с vba модулем - Alt+F11, там модуль Module1 с кодом функции Этот модуль можно поместить в PERSONAL.XLSB, сохраненный как надстройка, тогда функция будет работать во всех файлах на вашем пк без необходимости копирования модуля в них
speaky , у вас в настройках разрешены макросы? нажмите по очереди клавиши F10 ЕМБ Должно быть отмечено Разрешить макросы upd.Скопировал в новый файл и ошибка вместо значений
Копировать нужно вместе с vba модулем - Alt+F11, там модуль Module1 с кодом функции Этот модуль можно поместить в PERSONAL.XLSB, сохраненный как надстройка, тогда функция будет работать во всех файлах на вашем пк без необходимости копирования модуля в нихkrosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Четверг, 20.06.2019, 20:00
Ответить
Сообщение speaky , у вас в настройках разрешены макросы? нажмите по очереди клавиши F10 ЕМБ Должно быть отмечено Разрешить макросы upd.Скопировал в новый файл и ошибка вместо значений
Копировать нужно вместе с vba модулем - Alt+F11, там модуль Module1 с кодом функции Этот модуль можно поместить в PERSONAL.XLSB, сохраненный как надстройка, тогда функция будет работать во всех файлах на вашем пк без необходимости копирования модуля в нихАвтор - krosav4ig Дата добавления - 20.06.2019 в 18:40
krosav4ig
Дата: Четверг, 20.06.2019, 17:34 |
Сообщение № 264 | Тема: Связь ячеек в столбце с случайной генерацией.
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Это UDF
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение Это UDF Автор - krosav4ig Дата добавления - 20.06.2019 в 17:34
krosav4ig
Дата: Четверг, 20.06.2019, 16:58 |
Сообщение № 265 | Тема: Связь ячеек в столбце с случайной генерацией.
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
speaky , пробуйте UDF [vba]Код
Function randb(a, b) Application.Volatile False Randomize Timer randb = Int(Rnd * (b - a)) + a End Function
[/vba]
speaky , пробуйте UDF [vba]Код
Function randb(a, b) Application.Volatile False Randomize Timer randb = Int(Rnd * (b - a)) + a End Function
[/vba]krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение speaky , пробуйте UDF [vba]Код
Function randb(a, b) Application.Volatile False Randomize Timer randb = Int(Rnd * (b - a)) + a End Function
[/vba]Автор - krosav4ig Дата добавления - 20.06.2019 в 16:58
krosav4ig
Дата: Понедельник, 17.06.2019, 09:06 |
Сообщение № 266 | Тема: составление ведомостей по двум критериям
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
это что ваш бухгалтер считает лишними телодвижениями? нажать одну кнопочку? Исходную таблицу делаем умной (или делаем именованный динамический диапазон), в сводных заменяем источник данных на Таблица1 (или имя динамического диапазона). Все сводные обновляются командой Данные>Обновить все (Ctrl+Alt+F5)
это что ваш бухгалтер считает лишними телодвижениями? нажать одну кнопочку? Исходную таблицу делаем умной (или делаем именованный динамический диапазон), в сводных заменяем источник данных на Таблица1 (или имя динамического диапазона). Все сводные обновляются командой Данные>Обновить все (Ctrl+Alt+F5)krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение это что ваш бухгалтер считает лишними телодвижениями? нажать одну кнопочку? Исходную таблицу делаем умной (или делаем именованный динамический диапазон), в сводных заменяем источник данных на Таблица1 (или имя динамического диапазона). Все сводные обновляются командой Данные>Обновить все (Ctrl+Alt+F5)Автор - krosav4ig Дата добавления - 17.06.2019 в 09:06
krosav4ig
Дата: Суббота, 15.06.2019, 16:48 |
Сообщение № 267 | Тема: Выпадающий список из заголовков таблицы
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
[offtop] bmv98rus , эт я просто проснулсо недавно :)[/offtop]
[offtop] bmv98rus , эт я просто проснулсо недавно :)[/offtop] krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение [offtop] bmv98rus , эт я просто проснулсо недавно :)[/offtop] Автор - krosav4ig Дата добавления - 15.06.2019 в 16:48
krosav4ig
Дата: Суббота, 15.06.2019, 16:36 |
Сообщение № 268 | Тема: Выпадающий список из заголовков таблицы
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
если хочется без волатильных ДВССЫЛ и СМЕЩ, то в имя [vba]Код
=ИНДЕКС(Таблица1[#Заголовки];;2):ИНДЕКС(Таблица1[#Заголовки];;СЧЁТЗ(Таблица1[#Заголовки]))
[/vba]или [vba]Код
Function a(ByRef r As Range) As Range Set a = Intersect(r, r.Offset(, 1)) End Function
[/vba]в имена [vba]Код
=a(Таблица1[#Заголовки])
[/vba]
если хочется без волатильных ДВССЫЛ и СМЕЩ, то в имя [vba]Код
=ИНДЕКС(Таблица1[#Заголовки];;2):ИНДЕКС(Таблица1[#Заголовки];;СЧЁТЗ(Таблица1[#Заголовки]))
[/vba]или [vba]Код
Function a(ByRef r As Range) As Range Set a = Intersect(r, r.Offset(, 1)) End Function
[/vba]в имена [vba]Код
=a(Таблица1[#Заголовки])
[/vba] krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Суббота, 15.06.2019, 16:43
Ответить
Сообщение если хочется без волатильных ДВССЫЛ и СМЕЩ, то в имя [vba]Код
=ИНДЕКС(Таблица1[#Заголовки];;2):ИНДЕКС(Таблица1[#Заголовки];;СЧЁТЗ(Таблица1[#Заголовки]))
[/vba]или [vba]Код
Function a(ByRef r As Range) As Range Set a = Intersect(r, r.Offset(, 1)) End Function
[/vba]в имена [vba]Код
=a(Таблица1[#Заголовки])
[/vba] Автор - krosav4ig Дата добавления - 15.06.2019 в 16:36
krosav4ig
Дата: Четверг, 13.06.2019, 23:41 |
Сообщение № 269 | Тема: Отметить ячейки, имеющие черную верхнюю границу.
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
в D4 формула и тянем внизКод
=ЕСЛИ(ЕПУСТО(B4);D3;B4&" "&СЧЁТЕСЛИ($B4:B$4;B4))
в диспетчере имен создаем именованную формулу x Код
=ПОЛУЧИТЬ.ЯЧЕЙКУ(11;Лист1!F4)
, где F4 - адрес активной ячейки создаем УФ по формуле [code]=x[/code]
в D4 формула и тянем внизКод
=ЕСЛИ(ЕПУСТО(B4);D3;B4&" "&СЧЁТЕСЛИ($B4:B$4;B4))
в диспетчере имен создаем именованную формулу x Код
=ПОЛУЧИТЬ.ЯЧЕЙКУ(11;Лист1!F4)
, где F4 - адрес активной ячейки создаем УФ по формуле [code]=x[/code] krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение в D4 формула и тянем внизКод
=ЕСЛИ(ЕПУСТО(B4);D3;B4&" "&СЧЁТЕСЛИ($B4:B$4;B4))
в диспетчере имен создаем именованную формулу x Код
=ПОЛУЧИТЬ.ЯЧЕЙКУ(11;Лист1!F4)
, где F4 - адрес активной ячейки создаем УФ по формуле [code]=x[/code] Автор - krosav4ig Дата добавления - 13.06.2019 в 23:41
krosav4ig
Дата: Четверг, 13.06.2019, 22:37 |
Сообщение № 270 | Тема: Связь нескольких ячеек
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
циклическая ссылка, на всякий случай, работать-то будет, но предупреждение будет выскакивать а еще когда-то было [vba][/vba]
циклическая ссылка, на всякий случай, работать-то будет, но предупреждение будет выскакивать а еще когда-то было [vba][/vba] krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение циклическая ссылка, на всякий случай, работать-то будет, но предупреждение будет выскакивать а еще когда-то было [vba][/vba] Автор - krosav4ig Дата добавления - 13.06.2019 в 22:37
krosav4ig
Дата: Четверг, 13.06.2019, 22:26 |
Сообщение № 271 | Тема: Связь нескольких ячеек
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Alt+TF > Формулы > поставить галочку Включить итеративные вычисления, предел итераций можно установить равным 1 > OK Формулы для B6 и D6 Код
=ЕСЛИ(ЯЧЕЙКА("столбец")=6;ИНДЕКС(G:G;ЯЧЕЙКА("строка"));[@Столбец2])
Код
=ЕСЛИ(ЯЧЕЙКА("столбец")=6;ИНДЕКС(H:H;ЯЧЕЙКА("строка"));[@Столбец4])
выделили ячейку в столбце F, нажали F9
Alt+TF > Формулы > поставить галочку Включить итеративные вычисления, предел итераций можно установить равным 1 > OK Формулы для B6 и D6 Код
=ЕСЛИ(ЯЧЕЙКА("столбец")=6;ИНДЕКС(G:G;ЯЧЕЙКА("строка"));[@Столбец2])
Код
=ЕСЛИ(ЯЧЕЙКА("столбец")=6;ИНДЕКС(H:H;ЯЧЕЙКА("строка"));[@Столбец4])
выделили ячейку в столбце F, нажали F9 krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение Alt+TF > Формулы > поставить галочку Включить итеративные вычисления, предел итераций можно установить равным 1 > OK Формулы для B6 и D6 Код
=ЕСЛИ(ЯЧЕЙКА("столбец")=6;ИНДЕКС(G:G;ЯЧЕЙКА("строка"));[@Столбец2])
Код
=ЕСЛИ(ЯЧЕЙКА("столбец")=6;ИНДЕКС(H:H;ЯЧЕЙКА("строка"));[@Столбец4])
выделили ячейку в столбце F, нажали F9 Автор - krosav4ig Дата добавления - 13.06.2019 в 22:26
krosav4ig
Дата: Среда, 12.06.2019, 06:13 |
Сообщение № 272 | Тема: Вставка из одинарной ячейки в объединенную ячейку
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
берете и пишете в ячейку формулу Код
=ИНДЕКС(Список!A:A;Арки!A2)
и тянете вниз
берете и пишете в ячейку формулу Код
=ИНДЕКС(Список!A:A;Арки!A2)
и тянете вниз krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение берете и пишете в ячейку формулу Код
=ИНДЕКС(Список!A:A;Арки!A2)
и тянете вниз Автор - krosav4ig Дата добавления - 12.06.2019 в 06:13
krosav4ig
Дата: Вторник, 11.06.2019, 22:13 |
Сообщение № 273 | Тема: Найти автосохраненную версию.
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Юрий_Нд , [vba]Код
%localAppData%\Microsoft\Office\UnsavedFiles
[/vba] смотрели?
Юрий_Нд , [vba]Код
%localAppData%\Microsoft\Office\UnsavedFiles
[/vba] смотрели?krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение Юрий_Нд , [vba]Код
%localAppData%\Microsoft\Office\UnsavedFiles
[/vba] смотрели?Автор - krosav4ig Дата добавления - 11.06.2019 в 22:13
krosav4ig
Дата: Вторник, 11.06.2019, 18:34 |
Сообщение № 274 | Тема: Копирование данных в другую таблицу в другом порядке
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
krosav4ig
Дата: Вторник, 11.06.2019, 18:09 |
Сообщение № 275 | Тема: Агрегат не пропускает ошибку в массиве при выборке значений
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
почему именно при использовании функции ЕЧИСЛО, конструкция рушится
у вас в файле был НЕ массивный ввод формулы, отсюда и ошибки
почему именно при использовании функции ЕЧИСЛО, конструкция рушится
у вас в файле был НЕ массивный ввод формулы, отсюда и ошибкиkrosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение почему именно при использовании функции ЕЧИСЛО, конструкция рушится
у вас в файле был НЕ массивный ввод формулы, отсюда и ошибкиАвтор - krosav4ig Дата добавления - 11.06.2019 в 18:09
krosav4ig
Дата: Вторник, 11.06.2019, 17:42 |
Сообщение № 276 | Тема: Агрегат не пропускает ошибку в массиве при выборке значений
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
ну дык массивные формулы вводятся комбинацией Ctrl+Shift+EnterКод
=ИНДЕКС(ДанныеИмпорт!$K:$K;АГРЕГАТ(15;6;СТРОКА(ДанныеИмпорт!$K$2:$K$34)/ПОИСК($U$2;ДанныеИмпорт!$K$2:$K$34)^0;S2))
ну дык массивные формулы вводятся комбинацией Ctrl+Shift+EnterКод
=ИНДЕКС(ДанныеИмпорт!$K:$K;АГРЕГАТ(15;6;СТРОКА(ДанныеИмпорт!$K$2:$K$34)/ПОИСК($U$2;ДанныеИмпорт!$K$2:$K$34)^0;S2))
krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение ну дык массивные формулы вводятся комбинацией Ctrl+Shift+EnterКод
=ИНДЕКС(ДанныеИмпорт!$K:$K;АГРЕГАТ(15;6;СТРОКА(ДанныеИмпорт!$K$2:$K$34)/ПОИСК($U$2;ДанныеИмпорт!$K$2:$K$34)^0;S2))
Автор - krosav4ig Дата добавления - 11.06.2019 в 17:42
krosav4ig
Дата: Воскресенье, 09.06.2019, 22:07 |
Сообщение № 277 | Тема: Объединение листов кроме указанных
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Добрый вечер если список будет большой, то как-то так [vba]Код
Sub m() For i = 1 To Sheets.Count Select Case Sheets(i).Name Case "Общий", "СВОД СМЕТ" Case Else myR_Total = Sheets("Общий").Range("A" & Sheets("Общий").Rows.Count).End(xlUp).Row myR_i = Sheets(i).Range("A" & Sheets(i).Rows.Count).End(xlUp).Row Sheets(i).Rows("1:" & myR_i).Copy Destination:=Sheets("Общий").Range("A" & myR_Total + 6) End Select Next With Columns("A:D").Font .ColorIndex = xlAutomatic .TintAndShade = 0 End With Range("A1").Select End Sub
[/vba]или так[vba]Код
Sub m() For i = 1 To Sheets.Count If UBound(Filter(Array("Общий", "СВОД СМЕТ"), Sheets(i).Name)) < 0 Then myR_Total = Sheets("Общий").Range("A" & Sheets("Общий").Rows.Count).End(xlUp).Row myR_i = Sheets(i).Range("A" & Sheets(i).Rows.Count).End(xlUp).Row Sheets(i).Rows("1:" & myR_i).Copy Destination:=Sheets("Общий").Range("A" & myR_Total + 6) End If Next With Columns("A:D").Font .ColorIndex = xlAutomatic .TintAndShade = 0 End With Range("A1").Select End Sub
[/vba]
Добрый вечер если список будет большой, то как-то так [vba]Код
Sub m() For i = 1 To Sheets.Count Select Case Sheets(i).Name Case "Общий", "СВОД СМЕТ" Case Else myR_Total = Sheets("Общий").Range("A" & Sheets("Общий").Rows.Count).End(xlUp).Row myR_i = Sheets(i).Range("A" & Sheets(i).Rows.Count).End(xlUp).Row Sheets(i).Rows("1:" & myR_i).Copy Destination:=Sheets("Общий").Range("A" & myR_Total + 6) End Select Next With Columns("A:D").Font .ColorIndex = xlAutomatic .TintAndShade = 0 End With Range("A1").Select End Sub
[/vba]или так[vba]Код
Sub m() For i = 1 To Sheets.Count If UBound(Filter(Array("Общий", "СВОД СМЕТ"), Sheets(i).Name)) < 0 Then myR_Total = Sheets("Общий").Range("A" & Sheets("Общий").Rows.Count).End(xlUp).Row myR_i = Sheets(i).Range("A" & Sheets(i).Rows.Count).End(xlUp).Row Sheets(i).Rows("1:" & myR_i).Copy Destination:=Sheets("Общий").Range("A" & myR_Total + 6) End If Next With Columns("A:D").Font .ColorIndex = xlAutomatic .TintAndShade = 0 End With Range("A1").Select End Sub
[/vba] krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Воскресенье, 09.06.2019, 22:08
Ответить
Сообщение Добрый вечер если список будет большой, то как-то так [vba]Код
Sub m() For i = 1 To Sheets.Count Select Case Sheets(i).Name Case "Общий", "СВОД СМЕТ" Case Else myR_Total = Sheets("Общий").Range("A" & Sheets("Общий").Rows.Count).End(xlUp).Row myR_i = Sheets(i).Range("A" & Sheets(i).Rows.Count).End(xlUp).Row Sheets(i).Rows("1:" & myR_i).Copy Destination:=Sheets("Общий").Range("A" & myR_Total + 6) End Select Next With Columns("A:D").Font .ColorIndex = xlAutomatic .TintAndShade = 0 End With Range("A1").Select End Sub
[/vba]или так[vba]Код
Sub m() For i = 1 To Sheets.Count If UBound(Filter(Array("Общий", "СВОД СМЕТ"), Sheets(i).Name)) < 0 Then myR_Total = Sheets("Общий").Range("A" & Sheets("Общий").Rows.Count).End(xlUp).Row myR_i = Sheets(i).Range("A" & Sheets(i).Rows.Count).End(xlUp).Row Sheets(i).Rows("1:" & myR_i).Copy Destination:=Sheets("Общий").Range("A" & myR_Total + 6) End If Next With Columns("A:D").Font .ColorIndex = xlAutomatic .TintAndShade = 0 End With Range("A1").Select End Sub
[/vba] Автор - krosav4ig Дата добавления - 09.06.2019 в 22:07
krosav4ig
Дата: Воскресенье, 09.06.2019, 21:57 |
Сообщение № 278 | Тема: Power Query: Преобразовать двумерную таблицу в плоскую
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Здравствуйте[vba]Код
let Source = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content], f1 = (_)=>DateTime.ToText(_,"dd.MMM","ru-ru"), a = Table.TransformColumns(Table.ReplaceValue(Source,null,"",Replacer.ReplaceValue,{"Цена", "Комментарий"}),{{"Дата",f1},{"Дата2",f1}}), f2 = (t,s,s1)=>Table.RenameColumns(Table.SelectColumns(Table.UnpivotOtherColumns(t, {"Дата", "Дата2", "Наименование ", s}, "Атрибут", "Значение"),{s1, "Наименование ", "Атрибут", "Значение"}),{{s1,"Дата"}}), b = List.Distinct(a[Дата]&a[Дата2]), c = Table.Combine({f2(a, "Цена","Дата"),f2(a, "Комментарий","Дата2")}), f3 = (t)=>Table.RemoveColumns(Table.Pivot(t, b, "Дата", "Значение"),{"Наименование ", "Атрибут"}), d = Table.Group(c, {"Наименование ", "Атрибут"}, {{" ",f3}}), e = Table.Pivot(d, List.Distinct(d[Атрибут]), "Атрибут", " ")[[#"Наименование "],[Цена],[Комментарий]], f4 = (t,s)=>Table.ExpandTableColumn(t, s,b, List.Transform(b,each s&" "&_)), f = f4(f4(e, "Цена"), "Комментарий") in f
[/vba]
Здравствуйте[vba]Код
let Source = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content], f1 = (_)=>DateTime.ToText(_,"dd.MMM","ru-ru"), a = Table.TransformColumns(Table.ReplaceValue(Source,null,"",Replacer.ReplaceValue,{"Цена", "Комментарий"}),{{"Дата",f1},{"Дата2",f1}}), f2 = (t,s,s1)=>Table.RenameColumns(Table.SelectColumns(Table.UnpivotOtherColumns(t, {"Дата", "Дата2", "Наименование ", s}, "Атрибут", "Значение"),{s1, "Наименование ", "Атрибут", "Значение"}),{{s1,"Дата"}}), b = List.Distinct(a[Дата]&a[Дата2]), c = Table.Combine({f2(a, "Цена","Дата"),f2(a, "Комментарий","Дата2")}), f3 = (t)=>Table.RemoveColumns(Table.Pivot(t, b, "Дата", "Значение"),{"Наименование ", "Атрибут"}), d = Table.Group(c, {"Наименование ", "Атрибут"}, {{" ",f3}}), e = Table.Pivot(d, List.Distinct(d[Атрибут]), "Атрибут", " ")[[#"Наименование "],[Цена],[Комментарий]], f4 = (t,s)=>Table.ExpandTableColumn(t, s,b, List.Transform(b,each s&" "&_)), f = f4(f4(e, "Цена"), "Комментарий") in f
[/vba] krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение Здравствуйте[vba]Код
let Source = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content], f1 = (_)=>DateTime.ToText(_,"dd.MMM","ru-ru"), a = Table.TransformColumns(Table.ReplaceValue(Source,null,"",Replacer.ReplaceValue,{"Цена", "Комментарий"}),{{"Дата",f1},{"Дата2",f1}}), f2 = (t,s,s1)=>Table.RenameColumns(Table.SelectColumns(Table.UnpivotOtherColumns(t, {"Дата", "Дата2", "Наименование ", s}, "Атрибут", "Значение"),{s1, "Наименование ", "Атрибут", "Значение"}),{{s1,"Дата"}}), b = List.Distinct(a[Дата]&a[Дата2]), c = Table.Combine({f2(a, "Цена","Дата"),f2(a, "Комментарий","Дата2")}), f3 = (t)=>Table.RemoveColumns(Table.Pivot(t, b, "Дата", "Значение"),{"Наименование ", "Атрибут"}), d = Table.Group(c, {"Наименование ", "Атрибут"}, {{" ",f3}}), e = Table.Pivot(d, List.Distinct(d[Атрибут]), "Атрибут", " ")[[#"Наименование "],[Цена],[Комментарий]], f4 = (t,s)=>Table.ExpandTableColumn(t, s,b, List.Transform(b,each s&" "&_)), f = f4(f4(e, "Цена"), "Комментарий") in f
[/vba] Автор - krosav4ig Дата добавления - 09.06.2019 в 21:57
krosav4ig
Дата: Четверг, 06.06.2019, 03:45 |
Сообщение № 279 | Тема: Вертикальное объединение текста - в одной ячейке
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Здравствуйте Код
=E7&СИМВОЛ(10)&E8&СИМВОЛ(10)&E9&СИМВОЛ(10)&E10&СИМВОЛ(10)&E11&СИМВОЛ(10)&E12&СИМВОЛ(10)&E13
Код
=E7&" "&E8&" "&E9&" "&E10&" "&E11&" "&E12&" "&E13
или UDF [vba]Код
Function JoinLF$(ByRef r As Range) Dim v If r.Count = 1 Then JoinLF = " " & r: Exit Function For Each v In r.Value If Not IsEmpty(v) Then JoinLF = JoinLF & IIf(JoinLF > "", vbLf, "") & v Next End Function
[/vba] [p.s.]между кавычками перенос строки
Здравствуйте Код
=E7&СИМВОЛ(10)&E8&СИМВОЛ(10)&E9&СИМВОЛ(10)&E10&СИМВОЛ(10)&E11&СИМВОЛ(10)&E12&СИМВОЛ(10)&E13
Код
=E7&" "&E8&" "&E9&" "&E10&" "&E11&" "&E12&" "&E13
или UDF [vba]Код
Function JoinLF$(ByRef r As Range) Dim v If r.Count = 1 Then JoinLF = " " & r: Exit Function For Each v In r.Value If Not IsEmpty(v) Then JoinLF = JoinLF & IIf(JoinLF > "", vbLf, "") & v Next End Function
[/vba] [p.s.]между кавычками перенос строки krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Четверг, 06.06.2019, 03:46
Ответить
Сообщение Здравствуйте Код
=E7&СИМВОЛ(10)&E8&СИМВОЛ(10)&E9&СИМВОЛ(10)&E10&СИМВОЛ(10)&E11&СИМВОЛ(10)&E12&СИМВОЛ(10)&E13
Код
=E7&" "&E8&" "&E9&" "&E10&" "&E11&" "&E12&" "&E13
или UDF [vba]Код
Function JoinLF$(ByRef r As Range) Dim v If r.Count = 1 Then JoinLF = " " & r: Exit Function For Each v In r.Value If Not IsEmpty(v) Then JoinLF = JoinLF & IIf(JoinLF > "", vbLf, "") & v Next End Function
[/vba] [p.s.]между кавычками перенос строки Автор - krosav4ig Дата добавления - 06.06.2019 в 03:45
krosav4ig
Дата: Среда, 05.06.2019, 23:19 |
Сообщение № 280 | Тема: Сбор данных из однотипных таблиц в одну
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение тут ответилАвтор - krosav4ig Дата добавления - 05.06.2019 в 23:19