Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 След.
VBA при удалении\добавлении вычисляемого поля в какой-то момент он перестает его удалять
 
New, спасибо большое за ответ.
VBA при удалении\добавлении вычисляемого поля в какой-то момент он перестает его удалять
 
Коллеги, доброго дня.
Есть простой скрипт, идея которого по нажатию кнопки удалять вычисляемое поле, если оно удалено - добавлять.
Таких кнопок у меня две
Я заметил, что в какой-то момент он перестает удалять вычисляемое поле, хотя должен. Кажется это связано с позицией, если вычисляемое поле последнее он удалить не может(Вроде как)
Помогите пофиксить, или возможно есть элегантный вариант моего кода, я к сожалению как работать с вычисляемыми полями в VBA не нашел.
Код
On Error GoTo test
       ActiveSheet.PivotTables("PivotTable1").PivotFields( _
       "Sum of %approval").LabelRange.Cells(1, 1).Delete

Exit Sub
test:
           With ActiveSheet.PivotTables("PivotTable1").PivotFields("%approval")
            .Orientation = xlDataField
            .Name = "Sum of %approval"
            .NumberFormat = "0.00%"
            .Position = 5
        End With
Изменено: Александр - 07.02.2022 09:42:32
Ограничение выбора в срезе или хайд определенных параетров
 
Добрый день. Имеется в срез, в нем нужно убрать 3 пункта, спрятать или заблокировать чтобы не было возможности выбора

Не трогая исходник, как можно это сделать?)
При копировании среза, оба среза привязаны к одной и той же таблице и изменения копируются. Как отвязать 1 срез от 2?
 
Цитата
Дмитрий(The_Prist) Щербаков написал:
И тут на сайте тоже где-то было про то, как отвязать сводную от общего кэша. Но сходу не нашел.
Пока тоже инфы не нашел, но спасибо за ответ. Очень похоже на мою проблему, попробую найти решение.

Еще раз благодарю :)
При копировании среза, оба среза привязаны к одной и той же таблице и изменения копируются. Как отвязать 1 срез от 2?
 
Может я не правильно описал суть. Вы в своем же файле можете скопировать свой же срез и если в скопированном срезе изменить подключение. То первый срез его повторит)

Смотрите. Есть сводная на листе 1 и на листе 2.
Я хочу срез скопировать на 2 лист и просто изменить подключение на скопированном срезе на сводную которая находится на листе 2. И если я в этом срезе, который скопировал меняю подключение, то на 1 листе в 1 срезе оно так же меняется :)

И чтобы это пофиксить, мне с листа 2 нужно удалить полностью срез и сделать новый на основании уже сводной 2.
Но как можно разорвать связь между срезами если я копирую?
Казалось бы мелочь, но когда много листов и много срезов, где копирование решило бы вопрос. Данная неведомая связь портит "малину" :)
При копировании среза, оба среза привязаны к одной и той же таблице и изменения копируются. Как отвязать 1 срез от 2?
 
Может я не правильно описал суть. Вы в своем же файле можете скопировать свой же срез и если в скопированном срезе изменить подключение. То первый срез его повторит)
Изменено: Александр - 29.04.2020 16:04:10
При копировании среза, оба среза привязаны к одной и той же таблице и изменения копируются. Как отвязать 1 срез от 2?
 
Коллеги, добрый день.

Собственно вопрос такой, не нашел ответа в интернетах :)

Имеется 1 лист с 1 срезом, я копирую этот срез на другой лист и он полностью дублирует подключение к сводной. И если я на 2 срезе меняю подключение, то он его изменяет и на срезе 1.
Как отвязать эти срезы друг от друга?)  
VBA Поиск в строке ссылки на ячейку и замена значения из этой ссылки
 
Не знаю как этот макрос адаптировать.

У меня есть файл, который содержит ячейки типа тех, что я указывал в 1 посте. Это просто значение. напротив них ссылка на файл, я отрываю этот файл и забираю данные из этих ячеек


Т.е. если в ячейке указанно H15, я открываю файл и из него забираю из этой ячейки данные. Это легко
Но если в ячейке указано это G15 / F10 или это (G15 + 10) / I5, то мне нужно открыть файл найти значения в ячейках G15, F10 и I5 и сделать вычесления по формуле. или хотя бы подставить.
Я не могу понять как и строчного значения найти все ссылки на ячейки  
Изменено: Александр - 19.02.2020 10:39:08
VBA Поиск в строке ссылки на ячейку и замена значения из этой ссылки
 
Коллеги, добрый день.
Подскажите, как сделать такую вещь:
Есть ячейки с значениями:
H15
G15 / F10
(G15 + 10) / I5

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

Предположим G15 хранит значение 10, а I5 хранит 2

По последнему варианту мне надо выдать 10
(10 + 10) / 2
Если разрыв >24 часов, то нумерацию начать с единицы
 
Не жмите бездумно на кнопку цитирования.
Не пишите через строку
[МОДЕРАТОР]

В целом работает, решение классное. Странно, что я изначально не додумался до этого.

Но на боевом файле не корректно сработал. Приложил пример где работает неккоректно. К сожалению приложить полный боевой файл не могу из-за соображения, что имеются конф информация. В файле 170к строк :)
Если разрыв >24 часов, то нумерацию начать с единицы
 
Надеюсь данный пример понятнее будет :)

Спасибо
Изменено: Александр - 02.10.2019 09:59:58
Если разрыв >24 часов, то нумерацию начать с единицы
 
Цитата
Сергей написал:
пробуйте
Интересное решение. А если номера разные?) Т.е. надо еще по номерам группировать

Я написал конечно макрос под это дело, но чисто академический интерес как это можно сделать функциями экселя :)
Код
Private Function Numeric_By_Groups()
    
    Application.ScreenUpdating = False
    
    Dim r As Long, _
        LastRow As Long, _
        MemDate As Date, _
        Iterator As Long
    
    Iterator = 1
    
    Columns(8).Clear
    
    With ActiveSheet.UsedRange
        LastRow = .Rows.Count - .Row + 1
    End With
    
    For r = 2 To LastRow
        With Cells(r, 2)
            If Not .Value = .Offset(-1, 0).Value Then
                Iterator = 1
                MemDate = .Offset(0, 2).Value
                .Offset(0, 6).Value = Iterator
            End If
            
            If .Value = .Offset(1, 0).Value Then
                If DateDiff("h", MemDate, .Offset(0, 2).Value) < 24 Then
                    Iterator = Iterator + 1
                    .Offset(1, 6).Value = Iterator
                Else
                    Iterator = 1
                    MemDate = .Offset(1, 2).Value
                    .Offset(1, 6).Value = Iterator
                End If
            Else
                .Offset(1, 6).Value = Iterator
            End If
        End With
    Next r
    
End Function
Изменено: Александр - 02.10.2019 08:22:17
Если разрыв >24 часов, то нумерацию начать с единицы
 
Цитата
Сергей написал:
почему нумерация не прервалась тут явный разрыв больше суток
Опечатался, вы верно все подметили

Исправил в примерах
Изменено: Александр - 02.10.2019 08:09:24
Если разрыв >24 часов, то нумерацию начать с единицы
 
Всем добрый день. Не могу сообразить как сделать такую вещь:
Имеется список номеров с датой и временем.

Нужно пронумировать их по группе "Номера" и по условию. Если от 1 номера у последующих номеров прошло менее 24 часов, то нумирация идет в обычном режиме 1, 2, 3, 4 и тд. Но если более 24 часов, первый же номер после этой отметки будет так же первым и последющие будут сравниваться уже с ним.
79999999999 18.09.2019 16:07 1
79999999999 18.09.2019 17:10 2
79999999999 18.09.2019 17:17 3
79999999999 20.09.2019 17:18 1
79999999999 20.09.2019 17:19 2
79999999999 22.09.2019 17:21 1
79999999999 25.09.2019 17:21 1
Своими силами сделать не выходит, надеюсь смог более менее понятно описать. Файл во прилагаю
Изменено: Александр - 02.10.2019 08:08:04
Проверка значения по маске
 
Цитата
Светлый написал:
Предполагаю, что такая массивная формула поможет:
И правда, на примере работает.
Буду разбирать как она работает

Позже потестирирую на исходнике. Спасибо большое

Если не сложно, Вы можете разбить формулу с пояснениями?
Проверка значения по маске
 
Цитата
Ігор Гончаренко написал:
1. какие есть маски?
Их очень много.

И вариации разные, чуть ли не 999AAAAAAA

Цитата
Ігор Гончаренко написал:
2. по каким соображениям тот или иной номер относится к той или иной маске
Под буквой может быть любая цифра, но если буква в маске повторяется тогда там дублируется и цифра

т.е. Маска 999AAA0000
Под нее подходят такие номера 9990000000, 9991110000, 9992220000, 9993330000 и тд

Маска 999AEA0000
Под нее подходят такие номер 9991210000, 9992129999, 9991319999, 9996460000 и тд

Цитата
Ігор Гончаренко написал:
3. что в маске 999FFACCG2 делает буква G?
Не могу дать ответ. В источнике как я понял вообще рандомные буквы, но самое главное что быква хранит число от 0 до 9

Вот еще пару примеров из источника: 99900CCEEE, 999A23456A, 999ABBAAAB и тд
Проверка значения по маске
 
Господа, добрый день.

Подскажите как можно сделать. Есть список масок номеров
Пример:
999FFA3211Категория 2
999FFACCG2Категория 3
Есть список номеров:
9993340012
9991143211
Мне нужно по номеру понять к какой категории он относится исходя из тех масок, что есть
т.е. первый номер это категория 3
Второй номер это категория 2

Есть ли решение без VBA?
Проверка двух столбцов со смещением и вставка данных при соответствии
 
Цитата
Ігор Гончаренко написал: осталось описать условия задачи
Два столбца имеется, у них случается так, что строки не равны. В том столбце где строка не ровна, т.е. отсутствует значение нужно сделать смещение как правило на одну строку вниз дабы уровнять их

Я просто честно говоря затрудняюсь подробно описать суть проблемы. Это грубо говоря две выборки и в одной из них бывают пропущены значения
Проверка двух столбцов со смещением и вставка данных при соответствии
 
Цитата
Юрий М написал:
Может ВПР поможет?
Номера не уникальны, он может появиться еще где-то ниже по столбцу. Бывает даже два подрят и это скорей всего вызовит сбой
Попробую потестить  
Проверка двух столбцов со смещением и вставка данных при соответствии
 
Доброго времени суток.

Появилась такая задача: Имеется два столбца, бывает так, что в одном столбце значения не на одном уровне(К примеру в первом столбце отсутствует значение), тогда во втором столбце мы пропускаем строку со спуском вниз
Если делать формулой как сделал я, нужно прописать очень маштабно, так как с каждым спуском диапазон увеличивается. Я пытался сделать пока один столбец, но по условию значение может отсутвовать как в первом так и во втором столбце и исходя из этого, необходимо делать спуск чтобы их уровнять.

Придумать как оптимизировать подход - я не смог.

Описание водянистое, надеюсь как примере будет более понятно.

И да, задачу хочу сделать без VBA :) Подскажите возможное решение, заранее благодарен
Среди не уникальных номеров найти самую позднюю дату из соседнего столбца и вставить ее в новый столбец
 
Цитата
Stics написал:
Для рандомного порядка формула корректно не отработает. Она максимальное значение даты ищет, а не последнее.
А разве есть разница?

Проверить формулу не боевом файле пока не выходит, там более 100к строк. Очень тяжело считает :)
Среди не уникальных номеров найти самую позднюю дату из соседнего столбца и вставить ее в новый столбец
 
Цитата
Сергей написал:
=МАКС(ЕСЛИ($A$3:$A$15=A3;$B$3:$B$15))
Спасибо за решение, буду разбираться :) Как-то у Вас просто вышло и быстро)
Среди не уникальных номеров найти самую позднюю дату из соседнего столбца и вставить ее в новый столбец
 
Цитата
Stics написал:
1. Даты для каждого номера всегда в хронологическом порядке располагаются?
Нет, дата может в рандомном порядке быть проставлена

Цитата
Stics написал:
2. в 14 строке таблицы для номера 6565656565 в образце дата 04.01.2019, а в желаемой таблице по той же строке 06.01.2019. Почему так?
Опечатка, предполагалось что там будет дата 06.01.2019 :)
Среди не уникальных номеров найти самую позднюю дату из соседнего столбца и вставить ее в новый столбец
 
Господа, добрый день.
Помогите решить задачу с которой сам я справиться пока не могу.

К примеру:
В первом столбце есть список номеров(Не уникальный), во втором даты.
В третий столбец нужно вставить последнюю найденную дату(Если таковая имеется) по данному номеру.

Пример во вложении чтобы было наглядно
Изменено: Александр - 23.01.2019 15:08:05
Условное форматирование ячеек, в которых формулы заменены значениями
 
В надстройке plex которая продается на данном сайте, есть такой функционал :)
 
Изменено: Александр - 23.01.2019 10:35:05
Поиск слова в тексте и по этому слову подтягивать значение(Если имеется)
 
Спасибо большое, возьму на заметку и попробую разобраться :)
Хорошего Вам дня.
Поиск слова в тексте и по этому слову подтягивать значение(Если имеется)
 
Господа, добрый вечер.

Не могу сообразить как можно сделать такую вещь
Есть лист с ячейками такого плана:
Цитата
GiGwi игрушка для   кошек Мышка с электронным чипом
игрушка для кошек Мышка гигви с   электронным чипом
На втором листе есть таблица со словами такого плана:
Цитата
ГиГвиGiGwiГиГви (GiGwi)
Нужно в ячейке на листе1 найти слово из листа2(А1 или B1) и если оно найдется, то в ячейку где формула вставить в таком формате как на листе2 в ячейке C1(ГиГви (GiGwi))

Т.е. условно просто найти слово в ячейке и если оно есть сВПРить. Сам прийти к решению не могу, поиск тоже не дал результатов. VBA не знаю.
Как найти те ячейки, которая не нашла функция СЧЁТЕСЛИМН
 
Цитата
a.i.mershik написал:
SpiRiTMooN , Мне кажется поиск других условий которые указал оператор - не очень хорошая идея.Как по мне Вам лучше самому выбрать по специфике работы то что может быть (варианты) и операторам указать вносить только те данные которые Вы укажите списком или как то иначе и тогда не будет проблем.
К сожалению пока это невозможно, поэтому и ищу возможное решение проблемы. Чтобы не тратить на это много времени.
Как найти те ячейки, которая не нашла функция СЧЁТЕСЛИМН
 
Цитата
БМВ написал:
УФ  под учтенные условия.
У меня не получилось сделать :)
Как найти те ячейки, которая не нашла функция СЧЁТЕСЛИМН
 
Цитата
a.i.mershik написал:
SpiRiTMooN ,а пример можете привести в файле?
Конечно. Вот грубый, но пример.

Желтым выделил ячейки, их кол-во должно сходится с кол-вом поступивших. Кол-во поступивших 2977, найдено у меня 2967
10 потерянных нужно найти, как я описывал выше вручную достаточно долго их искать.

Возможно я все делаю не правильно, если есть варианты как-то упростить задачу был бы благодарен :)
Страницы: 1 2 След.
Наверх