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

Страницы: 1
Выделение ячеек по адресам, которые записаны в массиве.
 
Приветствую форумчане.
Подскажите, пожалуйста, как выделить диапазон ячеек, если их адреса записаны в массиве. Не разобрался.
FindRange определен заранее ка Range.
Код
    If KeyCode = vbKeyReturn Then
        Dim FindArr() As String
        Dim cell As Range
        If NameFind.Value <> "" Then
            n = 0
            For Each cell In FindRange
                If UCase(cell.Value) Like "*" & UCase(NameFind.Value) & "*" Then
                    ReDim Preserve FindArr(n)
                    FindArr(n) = cell.Address
                    n = n + 1
                End If
            Next
                'ActiveSheet.Range(FindArr).Select
        Else
            ActiveCell.Select
        End If
    End If
Изменено: Youngman.0 - 18.02.2022 11:10:18
Блокирование вызова контекстного меню Среза (Slicer), которое вызивается нажатием правой кнопки мыши на панеле Среза.
 

Здравствуйте форумчане.
Прошу помочь в решении проблемы. Имеется файл ексель, который предназначен по сути только для просмотра пользователем и перехода по нужным ему ссылкам. Для удобства просмотра на главный лист был выведен Срез (Slicer) по одному из столбцов умной таблицы. Вызов контекстных меню на рабочем листе бил предотвращен нижеприведённым кодом, но на объект Slicer это не распространилось. Все это должно работать на заблокированном листе. Блокирование самого Среза не помогло.
Возможно есть способ блокировать нажатие правой кнопки мыши в принципе - тоже помогло би.
Файл примера прикреплен.

Заранее благодарен.
Код
    For Each combar In Application.CommandBars
        combar.Enabled = False
    Next combar
Как преобразовать текст ячейки в формулу при вставке на лист Excel из запроса Power Query
 
Доброго времени суток.

Краткое описание задачи: собрать на одном листе данные из множества файлов. Имеется множество файлов (строго именованных), розложених по папкам (акти). Есть файл, собирающий все акти в один список с помощью инструмента power query. В самом запросе я создал ряд колонок, в которых формируются формули-ссылки на определенные именование диапазоны актов (данные которые нужно вивести в главном файле - реестре актов). Ето очень удобно, так-как с актами работает множество людей, и соответственно информация, которую они вносят, будет обновляться в реальном времени (без обновления запросов). Сами акти всегда лежать только на своем месте (не перемещаются, пути к ним не меняются). Все работает как надо, но есть проблема.

Описание проблеми: при обновлении запроса, в ячейки умной таблицы power query вставляет текст формул, не обновляя их. Для того чтобы в ячейке появилось значение ссылки, её нужно обновить - выделяем ячейку, нажимаем F2, переходим к следующей.

Вопрос: можно ли как-то сделать так чтоб excel понимал что там формула? (ручной пересчет формул не помогает) Или может написать макрос который обновлял би ячейки в диапазоне умной таблицы после обновления запроса.

Прикреплю скрины для общей наглядности и ссылку на архив примера, так-как размер превышает 100Кб.

Файл примера: https://drive.google.com/file/d/1giC9iIWW4KW_xr6jDylMYQinDOo-1wqd/view?usp=sharing
Числовой формат ячейки с разделителем разрядов и подавлением замыкающих нулей (включяя дробный разделитель)
 
Подскажите пожалуйста, как создать собственный числовой формат ячейки который умел бы следующее:
вводимое значение                         результат
1234 1 234
1234,5 1 234,5
1234,567 1 234,567
1234,56789 1 234,568
Автоматическое блокирование непустых ячеек при открытии файла.
 

Доброго времени форумчане. Помогите пожалуйста кодом VBA. Ситуация следующая: Имеется файл Excel (прикреплен ниже), который будет заполнятся разними людьми. Задача обеспечить защиту данных путем блокировки ячеек, но блокировать нужно непустые ячейки при открытии файла. В файле присутствует макрос на открытие книги, который включает защиту листов при открытии книги с возможностью пользоваться группировкой (пароль 1122). Можно ли написать необходимый макрос на открытие листа или на открытие книги. Заранее благодарен!!!

P. S. Искал в сети похожую информацию, но так и не разобрался.

P. S. На ошибки не обращайте внимания - пришлось удалить другие листы дабы уменьшить объём файла

 

Изменено: Youngman.0 - 02.09.2018 13:12:35
Автоматизация защити и группировки листа при его наполнении
 

Доброго времени суток дорогие форумчане, обращаюсь к вам за помощью в решении комплексной задачи. Мною била разработана форма листа (прикреплен ниже). В ней содержится довольно много условий которые срабатывают при заполнении листа. Лист заполняется разними людьми. Прямая задача – обеспечить интуитивно понятный интерфейс (чтобы каждому не раздавать инструкции к заполнению). В листе присутствуют два макроса: первый выравнивает текст по условию (на листе), второй (на открытие книги) защищает лист с паролем «1212» но при этом разрешает пользоваться группировкой. Для полного счастья не хватает несколько функций:

1. Авто группирование строк по критерию в колонке «В» «СУМА» - группировать нужно строчки выше, так чтобы строка СУМА била з «+». Количество верхних строк для группировки можно достать из ячейки на пересечении столбца Х и строки с содержанием «СУМА» в столбце «В». Функция должна работать в нескольких направлениях - при удалении содержимого «СУМА» ячейки в столбце В или замене его на любое другое, группировка должна пересчитываться с учетом обновленных цифр в столбце «Х». (Вручную группировка невозможна так как лист защищен).

2. Автопротягивание формул: формулы в столбцах «J, H, I, W, X, Y, Z» необходимо протягивать автоматически при заполнении ячеек в столбце «В», причем протягиваться должны до последней непустой клетки в столбце «В», то есть с учетом того что над последним значением в столбце «В» могут бить пустые строки.

3. Автоматическое блокирование непустых ячеек в диапазоне «C…F» и «I…S» по столбцах, и "диапазоне суммирования" по строках, плюс ячейку в столбце "А" напротив значения "СУМА" в столбце "В" (число предыдущих строк которые нужно суммировать можно достать из столбца "X" в строке со значением "СУМА" в колонке "В")(колонка "Х" просто считает количество предыдущих ячеек которые подлежат суммированию при добавлении значения "СУМА" в ячейку в столбце "В", можно увидеть проанализировав формулу "ДО ОПЛАТИ"), например (из файла) когда ячейка "В9" наполняется значением "СУМА"(СИНИЙ ТЕКСТ в файле), блокировки подлежат ячейки в диапазонах "C3:F8" и "I3:S8" и "А9" (КРАСНИЙ ТЕКСТ в файле) (при условие что они не пустые!), если они пустые, их нужно заблокировать после заполнения (ВАЖНО "заполнения" а не изменения, так как при нажатии клавиши DEL происходит изменение ячейки и как следствие блокированная пустая клетка), количество предыдущих строк которые суммируются можно извлечь из ячейки «Х9» (СИНЯЯ ЗАЛИВКА в файле).

4. Добавить защиту от вставки в ячейку значений путем CTRL+V из других файлов EXCEL. Это приведет к копированию формата (цвет заливки шрифт, правила форматирования) ячейки - что крайне ненужно. Но ВАЖНО оставить возможность вставлять значения ячеек путем копирования ячейки из другого файла и вставки в существующий "вставкой содержимого". Я думаю это можно реализовать просто запретив пользователю влиять на форматирование, однако нужно не мешать форматированию файла самому Екселю, так как все форматирование завязано на правилах, плюс есть небольшой макрос выравнивающий текст со значением "СУМА".

Прошу прощения за объединение нескольких вопросов в одной теме (если нужно я все разделю). К сожалению, в VBA ничего не понимаю и потом объединить все в один VBA код просто несмогу.

Заранее благодарен за ваше внимание!!!

Очень надеюсь на вашу помощь!!!

Изменено: Youngman.0 - 26.07.2018 11:05:38 (Несколько изменил пункт 3, добавил цветовую расскраску в файле для большей наглядности.)
Автоподбор высоты строки кратным числом.
 
Доброго времени люди, прошу вашей помощи в решении вопроса эстетического характера. Формирую таблицу, где столбец В является текстовым, периодически заполняется данными, при выборе автоматической высоты строки - высота выставляется в соответствии с размером шрифта. Есть ли возможность сделать так, чтобы высота при автоподборе задавалась кратным числом, например если текст в 1 ряд - высота 15, текст в 2 ряда - высота 30 и так далее?
Изменено: Youngman.0 - 12.07.2018 20:16:40
Страницы: 1
Наверх