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

Страницы: 1
Выделение ячеек по адресам, которые записаны в массиве.
 
Цитата
написал:
Очистить, покрасить, шрифт поменять…
Ето уже делается в другой процедуре. Виделить нужно просто для фокусировки внимания пользователя.

Спасибо.
Цитата
написал:
По ссылке выше есть моя функция, в которую достаточно передать массив адресов, а она нарежет строку на блоки не более 255 символов и вернёт массив диапазонов
За функцию тоже.
Просмотрю. Разберусь.
Выделение ячеек по адресам, которые записаны в массиве.
 
Спасибо. Все заработало согласно задуманого с нижеприведенным кодом.
Нехватало именно Join(FindArr, ",").
Насчет набора более 255 адресов не проверял.
Подскажите, ограничение 255 строк адресов, - это ограничение функции Join?
Код
    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(Join(FindArr, ",")).Select
        Else
            ActiveCell.Select
        End If
    End If
Изменено: Youngman.0 - 18.02.2022 12:10:22
Выделение ячеек по адресам, которые записаны в массиве.
 
Приветствую форумчане.
Подскажите, пожалуйста, как выделить диапазон ячеек, если их адреса записаны в массиве. Не разобрался.
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
 
БМВ, Принял, возьму на заметку.
Насчет имен функций - уже стыкался, учтено.
Спасибо!
Изменено: Youngman.0 - 25.07.2019 12:02:10
Как преобразовать текст ячейки в формулу при вставке на лист Excel из запроса Power Query
 
Цитата
в одном файле у меня такой велосипед. правильно или не правильно - не знаю. главное работает
Большая благодарность. Разобрался! Команда, которую Я искал Selection.FormulaLocal = Selection.Value.
Пришью ее к своему макросу, который в свою очередь поставлю на кнопку "ОБНОВИТЬ".
Еще раз благодарствую, очень помогло!
Как преобразовать текст ячейки в формулу при вставке на лист Excel из запроса Power Query
 
Сразу оглашу - ето второй вариант реализации даного файла реестра.
В первом варианте я вставлял столбцы в power query в которых сразу запрашивались необходимые данные и потом вставлялись на лист.
При таком способе запрос обновлялся очень долго и частенько выдавал ошибки в некоторых ячейках (при каждом обновлении в разных ячейках). Еще один недостаток - ето необходимость обновлять запрос при каждом изменении в файлах, что как-би проследить нереально.
При втором варианте файла реестра запрос нужно обновлять только при добавлении или удалении файлов актов, что контролируется одним человеком, который собственно и будет обновлять запрос когда ето нужно.
Как преобразовать текст ячейки в формулу при вставке на лист Excel из запроса Power Query
 
Доброго времени суток.

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

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

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

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

Файл примера: https://drive.google.com/file/d/1giC9iIWW4KW_xr6jDylMYQinDOo-1wqd/view?usp=sharing
Числовой формат ячейки с разделителем разрядов и подавлением замыкающих нулей (включяя дробный разделитель)
 
Извините, не понял выражения УФ. Со всем разобрался. Благодарю за помощь!!!
Числовой формат ячейки с разделителем разрядов и подавлением замыкающих нулей (включяя дробный разделитель)
 
Цитата
Сергей написал:
блин а чем тогда просто числовой формат не устраивает с нужным количеством знаков после запятой  
Числовой формат не устраивает тем что ячейка с даним форматом будет отображать количество некоего материала, то есть может бить 12045 кирпичей, а может бить и 1.255 тон арматуры. Вариант который вы предлагаете будет отображать 12045.0 кирпичей - как-то некрасиво.
Числовой формат ячейки с разделителем разрядов и подавлением замыкающих нулей (включяя дробный разделитель)
 
Цитата
БМВ написал:
запятая не пропадает. :-)УФ

Прикрепленные файлы
Copy of пример277.xlsx  (8.66 КБ)
Странно, у вас в примере все работает как надо, но у меня нет. Скопировал формат путем "Формат по образцу" - работает. Создал свой формати путем копирования # ###.### в формат General - не работает. А еще у вас в ячейке не отображается ноль при ссылке на пустую ячейку. В чем секрет? Если не секрет ))
Изменено: Youngman.0 - 07.09.2018 21:29:21
Числовой формат ячейки с разделителем разрядов и подавлением замыкающих нулей (включяя дробный разделитель)
 
В целом версия # ###,### как раз подходит, только я уже так пробивал, только дробный разделитель остаётся, можно сделать так чтобы он тоже не отображался, если число целое ?
Изменено: Youngman.0 - 07.09.2018 15:48:53
Числовой формат ячейки с разделителем разрядов и подавлением замыкающих нулей (включяя дробный разделитель)
 
Подскажите пожалуйста, как создать собственный числовой формат ячейки который умел бы следующее:
вводимое значение                         результат
1234 1 234
1234,5 1 234,5
1234,567 1 234,567
1234,56789 1 234,568
Автоматическое блокирование непустых ячеек при открытии файла.
 
Ещё раз прошу прощения если кого-то обидел. Не думал что вам так не понравится слово "помощь", Следующий раз так и напишу.
Автоматическое блокирование непустых ячеек при открытии файла.
 
Чем же я вам нагрубил? Передо мной стоит задача, за помощью в решение которой я обратился на форум, чем вам не угодило слово "помощь". Выходя из своего положения (Ищу кто поможет) я не могу обратится сюда со словами "ДАЙТЕ МНЕ ГОТОВОЕ РЕШЕНИЕ", вот и обратился за ПОМОЩЬЮ.

P. S. Не хотел никого обидеть. Прошу прощения если все же получилось.
Автоматическое блокирование непустых ячеек при открытии файла.
 
Цитата
Андрей VG написал:
Вызвать при наступлении этого события книги. Разбирайтесь.
Спасибо за помощь, разберусь. Пост писал не видя вашего ответа с прикреплённым примером! Не сочтите за неуважение, просто не люблю демагогии (касаетса Юрий М).

Задание на разработку обновлённой форми файлов, который я прикрепил, поступило от руководства компании где я работаю. (если вам интересно)
Изменено: Youngman.0 - 02.09.2018 17:53:18
Автоматическое блокирование непустых ячеек при открытии файла.
 
Цитата
Юрий М написал:
нет - Вы обратились за решением )
Пусть будет так, я обратился за решением, так как не обладаю необходимыми знаниями, в частности в области VBA, ето не меняет моей ситуации, у меня есть конкретная проблема которую мне нужно решить, я этого сделать сам не могу, соответственно обратился за помощью на форум.
Так вы поможете, или нет ?
Изменено: Youngman.0 - 02.09.2018 14:36:40
Автоматическое блокирование непустых ячеек при открытии файла.
 
Цитата
Андрей VG написал:
Да куда угодно, кроме модуля класса? Например в обычный модуль.
Поместил предлагаемый вами код в модуль класса. Что мне теперь нужно предпринять чтоби на листе (1) при открытии файла блокировались непустые ячейки?
Цитата
Андрей VG написал:
За помощью в чём?
За помощью в решении задачи, которую я изложил выше  
Автоматическое блокирование непустых ячеек при открытии файла.
 
Я в принципе не особо обладаю знаниями VBA, потому и обратился за помощью. Так что с этим всем делать, куда именно поместить код? Не совсем понял что значить "уровень защити". Информация защищена путем защиты каждого листа. Защита активируется макросом. что делать с этим кодом не понимаю.  
Автоматическое блокирование непустых ячеек при открытии файла.
 

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

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

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

 

Изменено: Youngman.0 - 02.09.2018 13:12:35
Автоматизация защити и группировки листа при его наполнении
 
Цитата
TheBestOfTheBest написал:
Уважаемый ТС. Я правильно понял, что Вы хотите, чтобы  написали код для приложенного файла по всем 4-м пунктам, причем бесплатно?
Ето конечно был-бы идеальный вариант, но я рад любой помощи, в том числе совету, мнению, ссылке на похожую тему или что-ни будь  другое. В любом случае ХОТЬ ЧТО-ТО больше чем НИЧЕГО.
Автоматизация защити и группировки листа при его наполнении
 
Я прошу помощи у форумчан, так как не в силах решить вышеупомянутые задачи, насколько я понял для бесплатной помощи я слишком многого прошу.
В любом случае спасибо за внимание, буду решать проблеми отдельно...
Изменено: Youngman.0 - 26.07.2018 11:56:31
Автоматизация защити и группировки листа при его наполнении
 
Цитата
Юрий М написал:
зачем в стартовом сообщении такой огромный шрифт?
Прошу прощения - изменил.
Автоматизация защити и группировки листа при его наполнении
 
Спасибо за подсказку, к сожалению не богат, но буду иметь в виду....
Автоматизация защити и группировки листа при его наполнении
 
Самому интересно… получится ли ….
Суть в том что файл уже готов к работе, но таких файлов в общей сложности будет несколько, и работать (наполнять информацией) их будут разные люди, соответственно поломать что-то очень легко, а особенно форматирование, следует вывод - нужно защитить лист, оказалось все не так просто, вот и прошу помощи, очень надеюсь на сообщество!!!

Еще я думаю что 4-й пункт можно (если конечно можно) заменить банальной защитой от форматирования (я думаю что такая возможность должна бить).
Автоматизация защити и группировки листа при его наполнении
 

Доброго времени суток дорогие форумчане, обращаюсь к вам за помощью в решении комплексной задачи. Мною била разработана форма листа (прикреплен ниже). В ней содержится довольно много условий которые срабатывают при заполнении листа. Лист заполняется разними людьми. Прямая задача – обеспечить интуитивно понятный интерфейс (чтобы каждому не раздавать инструкции к заполнению). В листе присутствуют два макроса: первый выравнивает текст по условию (на листе), второй (на открытие книги) защищает лист с паролем «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, добавил цветовую расскраску в файле для большей наглядности.)
Автоподбор высоты строки кратным числом.
 
Большое спасибо - все работает !!!
Автоподбор высоты строки кратным числом.
 
Смисл не в том чтобы набрать одну ячейку текстом в 27 рядов, а в том, чтоб висота ячейки при включенном автоподборе висоти автоподбиралась кратному числу по висоте - например: если текст поместился в ячейке в 2 строчки - висота ячейки автоподбором виставлялась 30, если в 3 строчки - в 45. Смисл чисто в естетике, фаайл построен без горизонтальних разделителей, таким образом будет обеспечена читабельность информации.  
Автоподбор высоты строки кратным числом.
 
Доброго времени люди, прошу вашей помощи в решении вопроса эстетического характера. Формирую таблицу, где столбец В является текстовым, периодически заполняется данными, при выборе автоматической высоты строки - высота выставляется в соответствии с размером шрифта. Есть ли возможность сделать так, чтобы высота при автоподборе задавалась кратным числом, например если текст в 1 ряд - высота 15, текст в 2 ряда - высота 30 и так далее?
Изменено: Youngman.0 - 12.07.2018 20:16:40
Страницы: 1
Наверх