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

Страницы: 1 2 3 4 5 6 7 След.
Где регулируется отображение разрядности чисел в Power BI?, Визуализация в Power BI?
 
Казалось бы простая штука, но сам искал минут 15 )))

вот, подробно и наглядно по шагам, вдруг кому пригодиться )
Запуск макроса при пересчете формулы я ячейке диапазона
 
Добрый день уважаемые форумчане, прошу Вашей помощи, туплю

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

Необходимо чтобы при пересчете формулы в ячейке, столбца А, автоматически (макросом) проставлялась текущая дата и время в ячейку столбца D, в той строке, которой сработал пересчет формулы (при этом если дата уже есть в столбце D, ее нужно затереть на текущую)

Написал макрос, но он почему то при пересчете одной формулы, проставляет одинаковую дату на весь заданный диапазон А3:А100
Код
Private Sub Worksheet_Calculate()

Dim target As Range
Dim Cell As Variant
Set target = Range("A3:A100")

For Each Cell In target.Cells
If Not Intersect(Cell, Range("A3:A100")) Is Nothing Then
    
     Cell.Offset(0, 3).Value = Now
    End If
Next Cell

End Sub
Размещение файла с надстройкой на сетевом (локальном) диске
 
buchlotnik, спасибо попробую
Размещение файла с надстройкой на сетевом (локальном) диске
 
Добрый день, уважаемые форумчане

Следующая ситуация. Создал надстройку для пользователей, но периодически ее приходится обновлять, физически добираясь до компьютера пользователей (всего 3 компьютера) и заменять файл с надстройкой на актуальный

Хочу попробовать вариант, размещения файла с надстройкой на общем диске (локальный диск компании), чтобы можно было заменять сам файл с надстройкой без необходимости физического посещения кабинета этих сотрудников. Предполагается, что надстройкой будут пользоваться 3 сотрудника

Вопрос, снизится ли скорость работы надстройки, при таком размещении, можно ли будет используя один файл, подключить надстройку на трех отдельных компьютерах и какие ограничения такого способа обновления надстройки меня ждут ?
Изменено: pinguindell - 3 Сен 2019 11:27:45
Добавить перехват ошибок в формулу, написанную в макросе
 
RAN, спасибо ! работает !
Добавить перехват ошибок в формулу, написанную в макросе
 
Sanja, я понимаю, но эта формула часть кода макроса и диапазон суммцвет каждый раз разный и поэтому требуется ввод переменой ilastraw  
Добавить перехват ошибок в формулу, написанную в макросе
 
Добрый день уважаемые форумчане,

что то я с этими запятыми глаза в кучу собрал, не могу видоизменить одну формулу :

Есть исходная формула на VBA :
Код
iLastRow = Cells(Rows.Count, 4).End(xlUp).Row
Range("K3").Formula = "=СУММЦВЕТ(K15:K" & iLastRow & "," & "I3" & ")"  

необходимо ее немного модифицировать и добавить перехват ошибок, чтобы получилось следующее

Код
Range("K3").Formula = "=IFERROR(IF(R[11]C="""","""",СУММЦВЕТ(R[12]C:R[94]C,RC[-2])),"""")"

Но никак не могу понять, где нужно поставить амперсант и кавычки

Изменил ее следующим образом
Код
Range("K3").Formula = "=IFERROR(IF(R[11]C="""","""",СУММЦВЕТ(K15:K" & iLastRow & "," & "I3" & ")),"""")"

но в результате основные переменные в формуле теперь заключены в кавычки  
Добавление определенного цвета в секцию "Последние цвета" в палитру цветов средствами VBA
 
Wiss,спасибо ! Обязательно ознакомлюсь и проверю на рабочем примере . Нашёл альтернативное , подходящее для меня решение , в поредение выложу рабочие файлы .

Решение на базе решения ikki, в теме
https://www.planetaexcel.ru/forum/index.php?PAGE_NAME=read&FID=8&TID=37551
Добавление определенного цвета в секцию "Последние цвета" в палитру цветов средствами VBA
 
файлы
Изменено: pinguindell - 22 Авг 2019 15:53:39
Импорт макроса в код листа
 
The_Prist, круть, спасибо за помощь ! с помощью этой статьи, сумел решить свою задачу
Добавление определенного цвета в секцию "Последние цвета" в палитру цветов средствами VBA
 
Добрый день уважаемые форумчане, такой вопрос, а можно ли средствами VBA, добавить в стандартную палитру в блок "Последние цвета", свой собственный цвет ?

В интернете нашел статью https://www.thespreadsheetguru.com/the-code-vault/vba-add-recent-colors-to-palette
но это как мне кажется не совсем то что нужно

Может кто-то задавался уже подобным вопросом ?

Данное действо необходимо для того, чтобы пользователь через надстройку "добавлял" данные цвета и потом использовал именно их для заливки ячеек. После чего при помощи функции происходил подсчет суммы по цвету ячеек
Таймер обратного отсчета на запуск макроса в кнопку CommandButton в UserForm
 
ребята, сегодня совершенно случайно нашел еще одно решение, которое как раз то, что я хотел

Во вложении файлик, может кому пригодиться
Таймер обратного отсчета на запуск макроса в кнопку CommandButton в UserForm
 
RAN, супер, спасибо за помощь, то что нужно  
Таймер обратного отсчета на запуск макроса в кнопку CommandButton в UserForm
 
Добрый день уважаемые форумчане,

обращаюсь к Вам за очередным советом и помощью
Знаю, что подобное решение уже где-то всплывало, поиском по Форуму воспользовался, но не нашел ничего подходящего

Суть задачи. Есть Userform, в которой есть кнопка "Старт макроса", как сделать так, чтобы при отображении формы, в кнопке "Старт макроса" отображались секунды обратного отсчета, по истечении которых, автоматически запускался бы макрос Text, который повешен на данную кнопку, если же пользователь нажимает кнопку до истечения таймера, то запускался бы все тот же макрос Text

Буду признателен за помощь
Изменено: pinguindell - 19 Авг 2019 15:24:18
Закончить автоматический пересчет формул и последующее выполнение кода макроса
 
Добрый день уважаемые форумчане, есть код, который прописывает в таблице формулы
Код
Dim cell_overdue As Object
Dim ñLastRow_overdue As Long
Dim clearLastRow_overdue As Long

clearLastRow_overdue = 2

For Each cell_overdue In ActiveSheet.Range("1:1").Cells
If cell_overdue.Value = "" Then Exit For
ñLastRow_overdue = ActiveSheet.Cells(Rows.Count, cell_overdue.Column).End(xlUp).Row
 If ñLastRow_overdue > clearLastRow_overdue Then clearLastRow_overdue = ñLastRow_overdue
Next cell_overdue

If clearLastRow_overdue > 1 Then

'блок формул 1

ActiveSheet.Range(Cells(2, 23), Cells(clearLastRow_overdue, 23)).FormulaR1C1 = _
        "=IF(AND(""Q1 Ìàð""=[@[Date.Q]],COUNTIFS(R1C10:RC[-13],RC[-13])=1),MAXIFS([Date.D],[Date.M-Y],[@[Date.M-Y]]),IF(AND(""Q2 Èþí""=[@[Date.Q]],COUNTIFS(R1C10:RC[-13],RC[-13])=1),MAXIFS([Date.D],[Date.M-Y],[@[Date.M-Y]]),IF(AND(""Q3 Ñåí""=[@[Date.Q]],COUNTIFS(R1C10:RC[-13],RC[-13])=1),MAXIFS([Date.D],[Date.M-Y],[@[Date.M-Y]]),IF(AND(""Q4 Äåê""=[@[Date.Q]],COUNTIFS(R1C10:R" & _
        "C[-13],RC[-13])=1),MAXIFS([Date.D],[Date.M-Y],[@[Date.M-Y]]),IF(AND(""Q1 Ôåâ""=[@[Date.Q]],COUNTIFS(R1C10:RC[-13],RC[-13])=1),MAXIFS([Date.D],[Date.M-Y],[@[Date.M-Y]]),IF(AND(""Q2 Ìàé""=[@[Date.Q]],COUNTIFS(R1C10:RC[-13],RC[-13])=1),MAXIFS([Date.D],[Date.M-Y],[@[Date.M-Y]]),IF(AND(""Q3 Àâã""=[@[Date.Q]],COUNTIFS(R1C10:RC[-13],RC[-13])=1),MAXIFS([Date.D],[Date.M-Y],[" & _
        "@[Date.M-Y]]),IF(AND(""Q4 Íîÿ""=[@[Date.Q]],COUNTIFS(R1C10:RC[-13],RC[-13])=1),MAXIFS([Date.D],[Date.M-Y],[@[Date.M-Y]]),IF(AND(""Q1 ßíâ""=[@[Date.Q]],COUNTIFS(R1C10:RC[-13],RC[-13])=1),MAXIFS([Date.D],[Date.M-Y],[@[Date.M-Y]]),IF(AND(""Q2 Àïð""=[@[Date.Q]],COUNTIFS(R1C10:RC[-13],RC[-13])=1),MAXIFS([Date.D],[Date.M-Y],[@[Date.M-Y]]),IF(AND(""Q3 Èþë""=[@[Date.Q]],COU" & _
        "NTIFS(R1C10:RC[-13],RC[-13])=1),MAXIFS([Date.D],[Date.M-Y],[@[Date.M-Y]]),IF(AND(""Q4 Îêò""=[@[Date.Q]],COUNTIFS(R1C10:RC[-13],RC[-13])=1),MAXIFS([Date.D],[Date.M-Y],[@[Date.M-Y]]),""""))))))))))))" & _
        ""

ActiveSheet.Range(Cells(2, 24), Cells(clearLastRow_overdue, 24)).FormulaR1C1 = "=CONCAT([@[Date.Q]],[@[Date.Y]])"
ActiveSheet.Range(Cells(2, 25), Cells(clearLastRow_overdue, 25)).FormulaR1C1 = "=LEFT([@[Date.Q]],2)&[@[Date.Y]]"
ActiveSheet.Range(Cells(2, 26), Cells(clearLastRow_overdue, 26)).FormulaR1C1 = "=MAXIFS([Date for MTD AR],[System_2],[@[System_2]])"
ActiveSheet.Range(Cells(2, 27), Cells(clearLastRow_overdue, 27)).FormulaR1C1 = "=IF(AND([@[System_3]]>0,COUNTIFS(R1C26:RC[-1],RC[-1])=1),SUMIFS([Ñóììà],[Date.D],[@[System_3]]),"""")"
ActiveSheet.Range(Cells(2, 28), Cells(clearLastRow_overdue, 28)).FormulaR1C1 = "=IF([@[Sum AR overdue_pivot]]<>"""",LEFT([@[System_1]],2),"""")"
ActiveSheet.Range(Cells(2, 29), Cells(clearLastRow_overdue, 29)).FormulaR1C1 = "=IF([@[Sum AR overdue_pivot]]<>"""",[@[Date.Y]],"""")"
ActiveSheet.Range(Cells(2, 30), Cells(clearLastRow_overdue, 30)).FormulaR1C1 = "=IF([@[Year_pivot]]<>"""",""ok"","""")"
ActiveSheet.Range(Cells(2, 31), Cells(clearLastRow_overdue, 31)).FormulaR1C1 = "=IF([@Flag]=""ok"",IFERROR(IF(SUMIFS(Total[Ñàëüäî íà êîíåö ïåðèîäà],Total[Date.D],[@[System_3]])=0,"""",SUMIFS(Total[Ñàëüäî íà êîíåö ïåðèîäà],Total[Date.D],[@[System_3]])),""""),"""")"

'блок формул 2

ActiveSheet.Range(Cells(2, 32), Cells(clearLastRow_overdue, 32)).FormulaR1C1 = "=CONCATENATE([@Date]&""_""&[@Çàêàç÷èê]&""_""&[@Ïîëó÷àòåëü]&""_""&[@[Ñïðàâ.¹]]&""_""&""_""&[@[System_'#]]&""_""&[@Ñóììà])"
ActiveSheet.Range(Cells(2, 33), Cells(clearLastRow_overdue, 33)).FormulaR1C1 = "=IF(LEN(CONCATENATE([@Çàêàç÷èê]&""_""&[@Ïîëó÷àòåëü]&""_""&[@[Ñïðàâ.¹]]&""_""&[@Ñóììà]&""_""&[@[Date.W]]))>255,CONCATENATE([@Çàêàç÷èê]&""_""&[@Ïîëó÷àòåëü]&""_""&[@Äîêóìåíò]&""_""&[@Ñóììà]&""_""&[@[Date.W]]),CONCATENATE([@Çàêàç÷èê]&""_""&[@Ïîëó÷àòåëü]&""_""&[@[Ñïðàâ.¹]]&""_""&[@Ñóììà]&""_""&[@[Date.W]]))"
ActiveSheet.Range(Cells(2, 34), Cells(clearLastRow_overdue, 34)).FormulaR1C1 = "=IF(LEN([@Çàêàç÷èê]&""_""&[@Ïîëó÷àòåëü]&""_""&[@[Ñïðàâ.¹]]&""_""&[@Ñóììà])>255,[@Çàêàç÷èê]&""_""&[@Ïîëó÷àòåëü]&""_""&[@Äîêóìåíò]&""_""&[@Ñóììà],[@Çàêàç÷èê]&""_""&[@Ïîëó÷àòåëü]&""_""&[@[Ñïðàâ.¹]]&""_""&[@Ñóììà])"
ActiveSheet.Range(Cells(2, 35), Cells(clearLastRow_overdue, 35)).FormulaR1C1 = "=COUNTIF(R1C33:RC[-2],RC[-2])"
ActiveSheet.Range(Cells(2, 36), Cells(clearLastRow_overdue, 36)).FormulaR1C1 = "=IF(AND([@[System_Ïîâòîðû]]=1,SUMIFS([System_Ïîâòîðû],[System_Êëþ÷_êîë-âî ïîâòîðîâ äàò â ðàìêàõ íåäåëè],RC[-3])>1),""blanks"","""")"
ActiveSheet.Range(Cells(2, 37), Cells(clearLastRow_overdue, 37)).FormulaR1C1 = "=COUNTIF(R1C34:RC[-3],RC[-3])"
ActiveSheet.Range(Cells(2, 38), Cells(clearLastRow_overdue, 38)).FormulaR1C1 = "=COUNTIFS([System_Êëþ÷_êîë-âî ïîâòîðîâ äàò â ðàìêàõ íåäåëè],RC[-5])"
ActiveSheet.Range(Cells(2, 39), Cells(clearLastRow_overdue, 39)).FormulaR1C1 = "=IF(AND([@[System_'#]]=1,[@[System_Îáùåå ÷èñëî ïîâòîðîâ]]=1),1,IF([@[System_Blanks]]<>""blanks"",MAXIFS(R1C39:R[-1]C,R1C34:R[-1]C[-5],RC[-5])+1,""""))"
ActiveSheet.Range(Cells(2, 40), Cells(clearLastRow_overdue, 40)).FormulaR1C1 = "=IFERROR(IF(IF([@[System_ñëó÷àé ïðîñðî÷êè]]=1,0,7*[@[System_ñëó÷àé ïðîñðî÷êè]])-7<0,IF([@[System_ñëó÷àé ïðîñðî÷êè]]=1,0,7*[@[System_ñëó÷àé ïðîñðî÷êè]])-7+7,IF([@[System_ñëó÷àé ïðîñðî÷êè]]=1,0,7*[@[System_ñëó÷àé ïðîñðî÷êè]])-7),"""")"


End If

затем происходит конвертация данных формул в значения

Код
Range("Overdue[[Date for MTD AR]:[Êîëè÷åñòâî äíåé ïðîñðî÷êè]]").Select

Dim smallrng_overdue As Range
    
For Each smallrng_overdue In Selection.Areas
    smallrng_overdue.Value = smallrng_overdue.Value
Next smallrng_overdue

проблема в том, что формулы не успевают пересчитаться и соответственно происходит конвертация не вычисленных данных в значения

пробовал использовать конструкцию

Код
''If Not Application.CalculationState = xlDone Then
''DoEvents
''End If

после блока формул, но ничего не выходит, формулы по прежнему продолжают не пересчитываться

Подскажите пожалуйста, как можно решить выполнение до конца всего пересчета и последующую конвертацию в значения

Пропадает связь диаграмм между Excel и ppt
 
mos_art,

1. а источник, в котором находится excel файл, имею ввиду, папка постоянно стабилен ? не переименовывается, не перемещается в другую папку ?
2. исходный excel файл не переименовывается ?
TextToColumns при преобразовании данных задает вопрос о замене
 
sokol92,спасибо ! работает

Просто заменой и копированием в ручном режиме, все это делать будет весьма проблематично, при ежедневной работе, а макрос то что нужно для автоматизации рутины !
TextToColumns при преобразовании данных задает вопрос о замене
 
Добрый день уважаемые форумчане,

написал следующий макрос, который преобразовывает данные из 1С в числовой формат, но при использовании метода TextToColums, он почему то требует замены, при этом разбивая цифры на отдельные столбцы.

Может кто уже сталкивался с таким и как обойти эту проблему ? Проблему не в плане появления запроса, а в плане, чтобы числа преобразовывались в числа без разделения на части
Изменено: pinguindell - 6 Июн 2019 11:28:55
Транспонирование строк из вертикального массива в горизонтальный
 
Юрий М, как всегда респектище большой ! Спасибо
Транспонирование строк из вертикального массива в горизонтальный
 
Добрый день уважаемые форумчане, в очередной раз требуется Ваша помощь в написании макроса

Есть выгрузка из 1С
Исходные данные на листе AS IS (количество строк может быть больше / меньше, чем указано в примере), то что должно получиться на листе TO BE

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

Буду очень признателен за помощь
Изменено: pinguindell - 4 Июн 2019 14:22:31
Формула расчета уникальных значений по порядку (Power Pivot)
 
PooHkrd, спасибо ! Выручили, несказанно благодарен за помощь !
Формула расчета уникальных значений по порядку (Power Pivot)
 
Добрый день уважаемые форумчане

Есть табличка с датами, которые добавляются в модель Power Pivot
Date
09.01.2018
09.01.2018
09.01.2018
09.01.2018
15.01.2018
21.01.2018
21.01.2018
21.01.2018
29.01.2018
29.01.2018
необходимо посчитать уникальные значения дат, пронумеровав их в порядке возрастания 1, 2, 3 и т.д.
DateCount
09.01.20181
09.01.20181
09.01.20181
09.01.20181
15.01.20182
21.01.20183
21.01.20183
21.01.20183
29.01.20184
29.01.20184
перебрал кучу формул, но пока результат нулевой. Буду признателен за помощь
Изменено: pinguindell - 24 Май 2019 14:14:19
Условное форматирование в сводной таблице
 
Проблема решилась трехчасовым экспериментом с отдельными элементами стиля для сводной таблицы и гайдом с картинки
Сохраните, вдруг кому пригодиться. На английском правда, но думаю что и так все понятно

Условное форматирование в сводной таблице
 
PooHkrd,уже экспериментировал, стили выделяют только построчно (по одной строке), а вот если это группа из нескольких строк, то уже выделение не работает (
Условное форматирование в сводной таблице
 
PooHkrd,да через полосу, дело в том, что если есть группа из двух/трех/четырех строк (например как строки 4,5 и 7,8) то это должно быть выделено цветом. Если же группы нет (строка 6), а строка одна, то строка остается пустой
Условное форматирование в сводной таблице
 
Доброго времени суток уважаемые форумчане,

недавно получил от своего босса, задачку, которая сломала мне всю голову

Есть смарт таблица, на основе которой строится сводная таблица (пример во вложении)

Как настроить условное форматирование / стиль сводной таблицы в сводной таблице, и можно ли вообще это сделать, так как показано в файле и на скрине ниже :



P.S. босс утверждает что он так уже делал, правда молчит и не сознается. Я не совсем дуб в Excel, но такого ни разу не видел, если кто-то уже сталкивался с подобной задачей просьба помочь
Изменено: pinguindell - 23 Май 2019 17:03:25
Выбор в фильтре даты перед максимальной
 
Sanja, Михаил Лебедев, спасибо за ваши варианты, работает !

Всех с пятницей !
Выбор в фильтре даты перед максимальной
 
Sanja, по нажатию на кнопку на листе
Выбор в фильтре даты перед максимальной
 
Уважаемые форумчане, добрый день

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

Задача заключается в следующем. Необходим макрос, который фильтровал бы столбец А в smart-table по следующей логике.

Столбец А - содержит даты, необходимо чтобы макрос отфильтровал столбец А по предыдущей дате перед максимальной. В моем примере, макс дата - 31.03.19, а предыдущая дата перед максимальной 22.03.19, соответственно макрос должен отфильтровать только строки с датой 22.03.19

Четкой разницы между макс и предыдущей датой нет, это может быть и один день и 7 дней

Буду признателен за помощь
Преобразование выгрузки из 1С при помощи макроса
 
Уважаемые форумчане, написал большую часть кода самостоятельно, остался не решенным пункты :
Цитата
4 В таблице для каждого заказа есть два варианта : либо две  строки последовательно (Заказчик - Получатель) - например, Рога и копыта  и КЛТ, либо одна строка и несколько получателей (Кронос - получатель  кронос 1, получатель кронос 2, получатель кронос 3, получатель кронос 4,  получатель кронос 5, получатель кронос 6, получатель кронос 7,  получатель кронос).

Послед  добавления названий Заказчика и Получателя, строку необходимо удалить  (в моем примере необходимо удалить строки 2,3,6,7,9,16,18,20,22,24,27,38
если решите все таки отправить в платный раздел, то пойду туда

PQ к сожалению не применима, т.к. данные действия выполняются периодически и необходим все же макрос для автоматизации
Во вложении файл с частью макроса
Изменено: pinguindell - 24 Янв 2019 11:12:57
Страницы: 1 2 3 4 5 6 7 След.
Наверх