Есть таблица данных на базе которой строится анализ.
Данный анализ нужно разделить на повторяющиеся данные, и уникальные.
Повторяющиеся (дубликаты) данные считаются по 2-м столбцам "Имя"&"Еда"
Диапазон данных должен зависить от фильтрации в анализе.
Таблица:
Имя
Еда
KEY
Кол-во дубл
Дубль?
Петя
Яблоко
ПетяЯблоко
2
Да
Вася
Груша
ВасяГруша
2
Да
Петя
Морковь
ПетяМорковь
1
Нет
Петя
Яблоко
ПетяЯблоко
2
Да
Коля
Яблоко
КоляЯблоко
1
Нет
Юра
Морковь
ЮраМорковь
1
Нет
Вася
Груша
ВасяГруша
2
Да
Сережа
Морковь
СережаМорковь
1
Нет
Если говорить Excel языком то расчет прост и он таков:
"Кол-во дубл" =СЧЁТЕСЛИ([KEY];[@KEY])
"Дубль" =ЕСЛИ([@[Кол-во дубл]]>1;"Да";"Нет")
Есть простенькое решение данной задачи? В источниках такое не реально делать, т.к. Power BI ссылается на папку с несколькими книгами, которые периодически пополняются.
По данной Мере мне надо посчитать количество строк, даты которых попадают в диапазон от максимальной дыты до даты, которая на 30 дней меньше максимальной. Максимальная дата в таблице по столбцу дат равна 31.10.2023, соответственно диапазон подсчета нужет от 31.10.2023 до 01.10.2023. Все считает, все хорошо. но.. Эти данные мне надо анализировать по нескольким составляющим, условно по исполнителю "Петя, Вася, Коля"
Так вот,
У Пети и Коли есть данные за 31.10.2023 число, и его диапазон подсчета начинаетсяот 31.10.2023 до 01.10.2023 то что надо.
У Васи последние данные есть только на 25.10.23, соответственно диапазон подсчета съезжает от 25.10.23 до 25.09.2023, но сентябрь уже не нужен...
Как сделать так, что бы данные учитывались только от 31.10.23 по всем критериям, независимо какая дата у них есть?
Возможно ли защитить проект Power BI паролем? Требуется выложить проект в общую сеть, но боюсь криворукие колеги его сломают. Пытался "гуглить", но без результатно...
Всё перерыл, но так и не нашел ответа. Проблема в следующем - построив накопительную гистограмму столкнулся с тем, что кликая по ее элементам (столбцы, условные обозначения) вместо того, чтоб визуальные данные фильтровались, открывается вторая страница со всемы данными из таблицы, и кнопка "Вернуться к отчету". Это делается как-то автоматически и рандомно.
Где это настраивать? 😣
Файлик приложить не могу, конфидициальные данные...
Срезы умной таблицы тормозят выполнение VBA кода, Срезы умной таблицы тормозят выполнение VBA кода - постоянно в строке состояния мелькает операция "операции со срезом"
Имеется большой масив данных забитый в умную таблицу (около 100 000стр х 40стлб.)
Данный масив периодически обновляется и расчитываеся макросом VBA.
Для удобства фильтрации имеется около 10-ка срезов.
Формулы на время работы макроса отключаются (да их и нет практически).
Обновление экрана на время работы макроса отключаются.
Проблема:
Макрос значительно тупит из-за срезов и самой умной таблицы (в строке состояния мелькает "операции со срезом")
Почему решил что именно из-за этого? Потому что если выполнять макрос не в умной таблице, расчет практически моментальный.
Либо, если данных намного меньше, то умная таблица расчитывается тоже моментально, кестественно относительно времени на строку с данными.
Не в умной таблице работать нельзя.
Вопрос:
Даже не знаю как правильно его описать, т.к. не понимаю что именно происходит во время замены данных в умной таблице. Знаю что это именнованый диапазон, и что он при этом меняется. Собственно, если кто сталкивался, может можно это как то исключить во время работы макроса?
Добрый день! Необходимо обработать кучу данных через аналог формулы СЧЁТЕСЛИ (если таковой существует) в VBA, т.к. из-за формул, пли малейшей манипуляции с файлом, он начинает пересчитываться и фризить. + Сложность добавляет подсчет данных по части символов. Как это сделать формулой, сложности нет,
Код
=СЧЁТЕСЛИ($B$7:$B$13;B3&"*")
а вот как это сделать ч/з VBA, вот тут вот я уперся в стену незнания. Собственно прикладываю файлик, с имитированной задачей, думаю по нему всё ясно.
обзываю его, например "ddd" Захожу в "Разрешить изменение диапазонов" и прописываю имя созданного диапазона. Нажимаю "Сохранить" и именной диапазон превращается в простой, согласно вычислению. Соответственно при изменении диапазона "ddd" "Разрешенный диапазон" не изменяется. Вопрос - есть возможность "Разрешить изменение диапазонов" динамически, не меняя его вручную? Спасибо.
Столкнулся с таким вопросом - есть лист с хаотично разбросанными данными, мне нужно их обработать , для этого нужно пробежаться по всем строкам и столбцам. Отдельно по строкам или столбцам понятно, но как сделать чтобы после обработки одного столбца, расчет переходил на следующий? Т.е. макрос обработал все ячейки из одного столбца (код ниже), и нужно перейти на следующий и т.д. пока не доберусь до последнего.
Код
Sub Макрос()
'
' Макрос
Application.Calculation = xlManual
Dim a&, d&
d = Cells.SpecialCells(xlLastCell).Row
For a = 1 To d
Cells(a, 2).End(xlToRight).Select
Cells(a, 1) = ActiveCell
Cells(a, 2).End(xlToRight) = ""
Next a
'Application.CutCopyMode = False
Application.Calculation = xlAutomatic
End Sub
Столкнулся с такой проблемой, у моего колеги, при запуске макроса, копируются данные из одной книги в другую, и при вставке данных все числа преобразуются в даты. При чем я использую тот же код и копирую те же данные, и у меня все вставляется в том же формате в котором копировалось.
Всем привет! Порылся в интернете, ничего не нашел.
Задался таким вопросом: по простой формуле ВПР из листа с данными подтягивается комментарий, и он может быть довольно длинный, поэтому чтобы его полностью прочитать необходимо изменять размер ячейки, но это очень неудобно... Можно ли сделать так, что бы в строке формул, вместо формулы отображались данные?
Столкнулся с такой проблемой, построен график с расположением по основной оси и вспомогательной, но т.к. в осях min и max разные приходится фиксировать их вручную, что бы они были равными. Но при смене критерия, по которому строится график, получается не смотрибельно, т.к. значения данных намного отличаются от предыдущих
Допустим, в ячейке cells(1, 1) находится текст "ДЕБЛ ПДТВ KKMP ПКАЛ ПРВВ" и мне нужно прописать условие, что если в тексте cells(1, 1) находится текст "ПДТВ" то cells(1, 2) = "ДА". Можно ли такое сделать с помощью VBA? Данных очень много... Поиски по интернету не дали результатов...
Где вопросительные знаки, хочу забить формулу, которая бы рассчитывала сумму по каждому месяцу таким образом, что бы среднее число по году составило 42 508. Сумма должна быть не одинаковой, а равномерно снижаться (!) Подскажите, может кто делал подобное...
Добрый день! Есть формула: =ИНДЕКС(Заявка!D ;ПОИСКПОЗ(B2&K2;Заявка!H:H&Заявка!A:A;0);0) Но она выдает ошибку #Н/Д , хотя при вводе формулы показывает актуальное значение:
объясню по рисунку: есть Котел 1, к нему присущи следующие заявки, так вот, как вот - можно ли сделать так, чтобы напротив каждой заявки прописывался Котел 1!?
Сперва не понял в чем проблема, но потом заметил, что в информационной строке мелькает "Расчет процессов" и "Готово", то бишь формулы, на совершенно другом листе куда макрос даже не подвязан, пересчитываются. Что делать!? Просто отключить авто расчет формул - неактуально. p.s. Макрос сидит не в модуле, а в листе.
Разнюхал хороший код на форуме (спасибо The_Prist) но получается такой косячок - критерий пуст а данные прописываются (одно и тоже кстати):
Как этого избежать? =(
Вот собственно код:
Код
Sub пример()
Dim rRange As Range
Dim rCell As Range
Dim sDescript As String
Dim sSKU As Double
Dim rFndRng As Range
Dim lLastRow As Variant
Workbooks("план.xlsm").Worksheets("Данные").Activate
lLastRow = ThisWorkbook.Worksheets("Данные").Cells(Rows.Count, 2).End(xlUp).Row 'определяем посл. строку в файле
Set rRange = Range(Cells(2, 13), Cells(lLastRow, 13)) 'задаем диапазон куда копировать
For Each rCell In rRange
sSKU = Cells(rCell.Row, 1).Value ' находим значение артикула для поиска
With Workbooks("факт.XLS").Worksheets("факт") 'переходим на лист с кодами
Set rFndRng = .Columns(3).Find(sSKU) ' задаем диапазон для поиска артикула с плана
If Not rFndRng Is Nothing Then
sDescript = .Cells(rFndRng.Row, 6) ' какие данные необходимо перенести
Else
sDescript = "Нет"
End If
Workbooks("план.xlsm").Worksheets("Данные").Cells(rCell.Row, 13) = sDescript ' переносим найденное описание в план
End With
Next rCell
End Sub
Всем, добрый день! Пытался сам найти, но безнадежно. Помогите слабоориентирующемуся человеку как с помошью VBA посчитать кол-во значений по критерию. Например, в столбце 5 найти количество ячеек соответствующих cells(2, 5)
Всем доброго времени суток!!! Перерыл интернет (может плохо рыл раз не нашел), литературку полистал, но так и не нашел метод определения по дате в ячейке номеров недели, месяца и года. Попадались похожие но не то. Суть в том что есть столбец с датами (21.01.2014) , рядом мне необходимо вывести номер недели и месяц, каким способом это можно сделать в VBA? (ч/з формулы слишком тяжело, т.к. очень много данных) Спасибо заранее!!!