Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 284 След.
Насколько бесконечный массив VBA
 
Цитата
sokol92 написал:
С точностью до 20%
Добрый вечер, Владимир.
Похоже всё несколько проще. В Excel 365 64 бит сработали следующие объявления
Код
Public Sub testArraySize()
    Dim byteArray() As Byte, dblArray() As Double
    Dim intArray() As Integer, lngArray() As Long
    
    ReDim byteArray(1 To 2 ^ 31 - 1)
    ReDim intArray(1 To 2 ^ 31 - 1)
    ReDim lngArray(1 To 2 ^ 30 - 1)
    ReDim dblArray(1 To 2 ^ 29 - 1)
End Sub

Судя по всему, VBA не может создать массив, занимающий в памяти больше 4 294 967 292 байт. Перестановка порядка создания массивов на появление Out of memory не влияет.
Изменено: Андрей VG - 23 Окт 2019 20:49:07
Экспотр таблиц из Word в Excel
 
Цитата
Slava977 написал:
Из ворда пробовал
В нём и только в нём надо было делать. Можете приложить файл docm Word с вашей попыткой использования?
Сравнение строк по фильтру в таблице Power BI
 
Доброе время суток.
Я конечно понимаю, что Максим Зеленский - волшебник, но полагаю, что и он средствами DAX не изобразит локальную группировку. Так что лучше делайте это перед загрузкой в модель в Power Query
Код
let
    Source = Excel.CurrentWorkbook(){[Name="Грузы"]}[Content],
    calcPrev = Table.Group(Source, {"Номер авто", "Ранг груза"}, {"ref", each List.Min([Индекс]) - 1}, GroupKind.Local),
    preparePrev = Table.RenameColumns(calcPrev, {"Ранг груза", "rank"}),
    joined = Table.Join(Source, {"Индекс"}, preparePrev[[rank], [ref]], {"ref"}, JoinKind.LeftOuter),
    result = Table.AddColumn(joined, "Смена груза", each if [rank] = null or [Ранг груза] = [rank] then "no" else if [Ранг груза] < [rank] then "good" else "bad"),
    #"Removed Columns" = Table.RemoveColumns(result,{"rank", "ref"}),
    #"Sorted Rows" = Table.Sort(#"Removed Columns",{{"Индекс", Order.Ascending}}),
    #"Changed Type" = Table.TransformColumnTypes(#"Sorted Rows",{{"Номер авто", type text}, {"Дата", type date}, {"Ранг груза", Int64.Type}, {"Индекс", Int64.Type}, {"Смена груза", type text}})
in
    #"Changed Type"
Экспотр таблиц из Word в Excel
 
Цитата
Slava977 написал:
я что то не так запускаю
Может быть не там?
Экспотр таблиц из Word в Excel
 
Цитата
Slava977 написал:
но вот в коде возникла ошибка
Вы настолько застенчивы, что не готовы поделиться деталями? У меня нет ошибки.
Сдвиг данных под сводной таблицей
 
Цитата
Difekon написал:
вот только не силён я в макросах(
Ну, тогда стоит подождать - вдруг кому будет интересно написать такой макрос?
Если это действительно нужно, то обратитесь в раздел форума Работа - сильные в макросах есть!
Экспотр таблиц из Word в Excel
 
Доброе время суток
Цитата
Slava977 написал:
перенести таблицы Word в Excel
Форум вроде как по Excel, ну да ладно
Код
Public Sub copyTableToExcelWorksheets()
    Dim xlApp As Object, pBook As Object, pSheet As Object
    Dim pTable As Table, i As Long, heads As Collection, head As Paragraph
    Set pTable = ThisDocument.Tables(1)
    Set xlApp = CreateObject("Excel.Application")
    xlApp.Visible = True
    Set pBook = xlApp.Workbooks.Add
    Set heads = getHeaderCollection: i = 0
    For Each pTable In ThisDocument.Tables
        Set pSheet = pBook.Sheets.Add(After:=pBook.Sheets(pBook.Sheets.Count), Type:=-4167)
        i = i + 1
        Set head = heads(i)
        head.Range.Copy
        pSheet.PasteSpecial Format:="HTML"
        pSheet.Range("A2").Select
        pTable.Range.Copy
        pSheet.PasteSpecial Format:="HTML"
    Next
End Sub


Private Function getHeaderCollection() As Collection
    Dim pPara As Paragraph, result As New Collection
    For Each pPara In ThisDocument.Paragraphs
        If pPara.OutlineLevel = wdOutlineLevel3 Then result.Add pPara
    Next
    Set getHeaderCollection = result
End Function
Изменено: Андрей VG - 21 Окт 2019 20:55:11 (Добавил вывод заголовков по позиционному принципу)
Сдвиг данных под сводной таблицей
 
Доброе время суток
Цитата
Difekon написал:
Неужели Excel на такое не способен?  
Способен. Если макрос написать. Краткий алгоритм
1. Вставляете заведомо большое число строк между сводной и подписью.
2. Лишние скрываете.
3. После обновления сводной по событию Worksheet_PivotTableUpdate узнаёте сколько строк занимает сводная и сколько строк нужно показать, сколько скрыть, чтобы подпись директора и примкнувших к нему была на требуемое число строк смещена от конца сводной таблицы.
Где-то на форуме даже писал такой макрос. Найти не смог :(   Видимо вопрос был так поставлен, что по смыслу фиг найдёшь.
HB
 
Добрый день, коллеги.
Огромное спасибо! Рад знакомству с такими замечательными людьми. Да будут на форуме для вас только интересные задачи!
Поиск гибкого MAX значения средствами POWER QUERY, Необходимо найти MAX значение с учетом значений нескольких столбцов
 
Доброе время суток
Цитата
Apetitto написал:
есть идеи?
Видите ли. Чтобы были идеи нужно понимать:
Цитата
Apetitto написал:
завод производитель (Sender ID)
по Sender ID в таблице как часть заголовка находится аж 4 столбца - какой из них использовать?
Цитата
Apetitto написал:
Product ID... Loading Station... Port of Loading...
и так далее не находятся. Искать же среди 22 столбцов - что подходит по смыслу, видимо, никому не интересно. Да и примера результата и алгоритма логического решения (просто описания что откуда берём и куда помещаем) нет.
Поэтому идей нет. ТСы последнее время требуют, чтобы в их темах не писали на отвлечённые темы и не приставали с вопросами, дабы не отнимать их драгоценное время - ждут ответа только от специалистов своей области знаний, готовых поделится уже существующим решением. Поэтому просто ходим мимо :)
Подсчет значений и максимальных серий на Power Query
 
Цитата
kolyaya написал:
Можете пояснить команды Table.RowCount(_) и GroupKind.Local
Да не вопрос. Они не тайна за семью печатями :)   Table.RowCount, Aggregating By Local Groups In Power Query.
Успехов.
Вставка картинок из каталога. Есть две картинки с одинаковыми размерами. А вставляются с разными размерами.
 
Цитата
maseur написал:
как Экселю сказать это
Excel использует параметр растра - dpi, число точек растра на дюйм. Вот этим параметром ваши картики и отличаются. Приведите к одному значению и будет так, как вам хочется.
Вставка картинок из каталога. Есть две картинки с одинаковыми размерами. А вставляются с разными размерами.
 
Доброе время с3ток
Цитата
maseur написал:
всех высоту задал 160 пикселей
А как Excel должен догадаться, что 160 пикселей - это 5 сантиметров?
Подсчет значений и максимальных серий на Power Query
 
Цитата
kolyaya написал:
Может ли проблема крыться в типе данных?
Проблема может крыться в необъяснении на каком порядке вы хотите искать серии. Как понял на порядке: продукт, дата. По процессному смыслу (как понял) - для каждого продукта на последовательном диапазоне дат продаж определить максимальное количество последовательных дней, когда его цена не изменялась, и количество таких последовательностей таких дней. Если угадал, то действительно ли для вас было так сложно поставить такой вопрос задачи? :)
Код
let
    Source = Excel.CurrentWorkbook(){[Name="Таблица2"]}[Content],
    table1 = Table.RenameColumns(Source[[Дата], [Продукт1], [Сумма]], {"Продукт1", "Продукт"}),
    table2 = Table.RenameColumns(Source[[Дата], [Продукт2], [Сумма]], {"Продукт2", "Продукт"}),
    setNeededOrder = Table.Sort(table1 & table2, {{"Продукт", Order.Ascending}, {"Дата", Order.Ascending}}),
    local = Table.Group(Table.AddIndexColumn(setNeededOrder, "id"), {"Продукт", "Сумма"}, {"local", each Table.RowCount(_)}, GroupKind.Local),
    global = Table.Group(local, {"Продукт", "Сумма"}, {{"Всего", each List.Sum([local])}, {"Максимальная серия", each List.Max([local])}}),
    unpivot = Table.Unpivot(global, {"Всего", "Максимальная серия"}, "Итог", "Значение"),
    pivot = Table.Pivot(unpivot, List.Distinct(unpivot[Продукт]), "Продукт", "Значение")
in
    pivot
Объект RegExp. Использовать один или два? Плюсы и минусы.
 
Цитата
RAN написал:
Разница в 0,3 сек (вероятно, на создание второго RegExp) погоды не делает.
Тёзка, а как была найдена разница? ;)  На мой взгляд, там всё в пределах погрешности - в лучшем случае, если подбить статистику по трём запускам в 0,135 секунды разницы между средним, а если посчитать доверительный интервал для среднего?
Но, можно же первый вариант сделать и по человечески :)  Железо и Excel другие
Вариант 1
11,62891
11,48438
11,50391
Вариант 1 дополненный
Скрытый текст

7,730469
7,808594
7,753906
Цитата
RAN написал:
Ну, и вообще, мне просто не нравится раннее связывание
Я же не настаиваю, если разница в расчётах 0,01 секунды или 0,02 секунды - то её нет для пользователя. Тогда лучше делать универсальное решение, максимально сопровождаемое и переиспользуемое. Но если одни сутки или двое суток? Тут вопрос философский, что важнее - абсолютных решений нет, увы, Игорь прав.
Изменено: Андрей VG - 20 Окт 2019 11:37:03
Объект RegExp. Использовать один или два? Плюсы и минусы.
 
Доброе время суток
На 1000000 повторений:
1 версия
4,734375
4,617188
4,585938
2 версия
4,492188
4,515625
4,523438
Третья версия
Скрытый текст

3,0625
3,0625
3,054688
Четвёртая версия
Скрытый текст

2,476563
2,515625
2,453125

P. S. А собственно в чём вопрос?
Изменено: Андрей VG - 19 Окт 2019 20:44:19
Power Query: разбитие данных в ячейке по столбцам + ВПР по каждому полученному столбцу = суммирование полученных значений
 
Доброе время суток
Вариант
Код
let
    codes = Excel.CurrentWorkbook(){[Name="Код"]}[Content],
    codesToKey = Table.TransformColumns(codes, {"Код", each if _ is number then Number.ToText(_, "0.00", "ru-RU") else _, Text.Type}),
    source = Excel.CurrentWorkbook(){[Name="Данные"]}[Content],
    sourceKeyList = Table.AddColumn(source, "key", each Text.Split([Исходные данные], "-"), List.Type),
    sourceToKey = Table.ExpandListColumn(sourceKeyList, "key"),
    joined = Table.Join(sourceToKey, {"key"}, codesToKey, {"Код"}),
    result = Table.Group(joined, {"Исходные данные"}, {"Что должно получиться:", each List.Sum([Значение]), Number.Type})
in
    result

Забудьте про такую функцию как ВПР в Power Query :)
Изменено: Андрей VG - 12 Окт 2019 15:52:52
Power Query, тэги с кириллицей импортируются в нечитаемом виде.
 
Доброе время суток
Цитата
berezkkin601 написал:
Каким образом можно добиться правильного отображения кириллицы?
Цитата
2.3. Приложите файл(ы) с примером (общим весом не более 300Кб) в реальной структуре и форматах данных того, что есть сейчас и того, что хотелось бы на выходе.
Выделить строки таблицы по совпадению в столбце
 
Доброе время суток
Цитата
Настя_Nastya написал:
Совпадает с чем?!
Осмелюсь предположить, что ТС хочет нечто вроде такого, раскрасил для примера и с учётом
Цитата
evgen740102 написал:
при добавлении новой строки, на нее распространялось условие.
Естественно, могу быть не прав.
Изменения в дизайне основной ветки
 
Цитата
БМВ написал:
У котов какая-то другая первая страница.
Это естественно - модератор-ж.
Требуется специалист Excel на написание отчетов
 
Цитата
Jag568 написал:
1 неделя с оплатой 130 руб/ч, после оплата фикс 5000 рублей.
5000 - это в час?
Как в SQL-запросе игнорить дубли?
 
Цитата
Ungrateful написал:
Так ничего и не вышло
Правильно ли я понимаю, что чёткого описания структур таблиц не будет, не говоря уж о примере? Лучше ждать, чем правила форума соблюдать?
DAX, фильтр по динамической таблице
 
Доброе время суток
Цитата
Vladimir Chebykin написал:
Призываю других DAX-систов попробовать разобраться
предлагаете
Цитата
Vladimir Chebykin написал:
полчаса потребовалось разобраться
столько же времени потратить или больше?
Кому решение нужно, тот внятную постановку задачи и делает. Позволю себе перефразировать софорумчанина :)
Вставить таблицу Access в массив вертикально
 
Цитата
БМВ написал:
покажите как вы возвращаете.
А смысл, Михаил? Думаете у ТС решена проблема
Цитата
Hellmaster написал:
вернуть таблицу с расчетами обратно в аксес
С точки зрения же обработки нет никакой разницы как расположены данные записи таблицы по первому индексу массива строки, а по второму - данные строк или по первому индексу данные строки, а по второму - строки, по большому счёт дело привычки. А вот как вернуть данные в таблицу Access на более чем 1000000 строк - та ещё задача по быстродействию :)
Как в SQL-запросе игнорить дубли?
 
Доброе время суток
Цитата
БМВ написал:
и должен брать две таблицы 1 и 2 и разницу вставлять в одну из них
Привет, Михаил
Ungrateful, вы не стесняйтесь продемонстрировать структуру данных и описание первичного ключа. Решается, в общем-то банальным подзапросом, мышкоклацательного решения только тут нет.
Как в SQL-запросе игнорить дубли?
 
Доброе время суток
Цитата
Ungrateful написал:
, я же вставляю
Сергей написал о такой конструкции вставки INSERT INTO конечный_объект [(поле1[, поле2[, …]])] [IN внешняя_база_данных] SELECT [источник.]поле1[, поле2[, …] FROM выражение_таблицы. Вот в том Select и нужно использовать Distinct
PQ. Избавиться от дубликатов путем добавления префикса в дополнительном столбце
 
Цитата
vlad000 написал:
я вот так и не могу
Тем временем с момента первого вопроса о Power Query прошло уже больше года...
Функция подсчёта уникальных значений в фильтрованном диапазоне (Excel VBA)
 
Доброе время суток.
Можно добавить проверку на видимость строки текущей ячейки
Код
rCell.EntireRow.Hidden
Убрать одну колонку из Totals в power bi
 
Доброе время суток
Цитата
zhekachan написал:
как убать из total в матрице одну колонку
Что вы подразумеваете под колонкой в total?
Смена источника данных для сводной таблицы, Смена источника данных для сводной таблицы
 
Доброе время суток
Цитата
Михаил Лебедев написал:
.ChangePivotCache
Можно ещё проще - без создания нового кэша, если структура данных такая же
Код
Public Sub ChangePivotSource()
    Dim pPivot As PivotTable, pCache As PivotCache
    Set pPivot = Workbooks("pivot.xlsx").Worksheets("MySheetWithPivotName").PivotTables("MyPivotTableName")
    Set pCache = pPivot.PivotCache
    pCache.SourceData = "'D:\Path\[source2.xlsx]Лист1'!R1C1:R9C3"
End Sub
Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 284 След.
Наверх