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

Страницы: 1
Убрать вывод единицы на основе пользовательской функции, Поправить код пользовательской функции
 
Добрый день, появилась необходимость объединить в одной ячейке уникальные значения из выделенного диапазона с выбором разделителя. В интернете нашлась почти идеально подходящая под задачу пользовательская функция:

Код
Function ConcatUniq(xRg As Range, xChar As String) As String
    Dim xCell As Range
    Dim xDic As Object
    Set xDic = CreateObject("Scripting.Dictionary")
    For Each xCell In xRg
        xDic(xCell.Value) = Empty
    Next
    ConcatUniq = Join$(xDic.Keys, xChar)
    Set xDic = Nothing
End Function


Но есть проблема: объединяются по факту числа меньше единицы, но в диапазоне встречается единица (она может быть в начале, в середине, в конце диапазона, может содержаться несколько раз или ни разу).
Можно ли поправить код самой пользовательской функции ConcatUniq, чтобы игнорировалась (не выводилась) единица во всех этих вариациях, как в приложенном примере?
Выделить в отдельном столбце последнюю группу одинаковых значений перед определенным наименованием
 
Добрый день. В приложенном файле-примере хотелось бы выделить последнюю группу одинаковых фруктов из столбца A перед наименованием "Количество" в столбце B. То есть, чтобы получилось как в столбце C с помощью формулы
Автоподбор высоты строк, но не меньше определенной высоты, Поправить код, чтобы после автоматического подбора высоты строк, высота строки была не менее 30 пикселей
 
Добрый день!
Подскажите, сейчас есть макрос, который выделяет строки с 33 до конца таблицы и автоматически подбирает высоту строки по содержимому:

Код
 Range("A33", Cells(Rows.Count, 7).End(xlUp)).Select
  Selection.Rows.AutoFit


Проблема в том, что некоторые строки получаются слишком узкими. Можно ли поправить код, чтобы после автовыравнивания высоты строк, минимальная высота строки была 30 пикселей?
Выводить часть формулы значением через макрос, Поправить код, чтобы часть формулы стала значением
 
Добрый день! Появилась необходимость, чтобы в таблице в некоторых ячейках данные были прописаны в виде формул. С помощью приемов по Excel  написал простенький макрос, который выводит формулой в ячейках G2, G3 произведение количества из столбца F на Хар-ку 2 (Хар-ка 2 считается, используя ВПР из таблицы с именем "расценки", находящуюся на соседнем листе). Хотелось бы, чтобы часть формулы с ВПР выводилась сразу значением.
Понимаю, что получилось довольно запутано, надеюсь в приложенном файле с примером все станет сразу понятно

То есть проще говоря в коде:
Скрытый текст
нужно, чтобы часть "=ОКРУГЛ(F" & i & "*ВПР(C" & i & ";расценки;3;ЛОЖЬ) возвращала сразу значение, а не эту формулу, то есть чтобы в коде макроса было что-то вроде "=ОКРУГЛ(F" & i & "*ВПР(C" & i & ";расценки;3;ЛОЖЬ).VALUE. Тут просто не знаю как этот аналог VALUE прописать в коде
Макрос для очистки ячеек по условию, Очистить данные в определенных столбцах для строк по условию
 
Добрый день! В таблице, начиная с 36 строки в столбцах от I до O включительно содержаться данные, которые нужно очистить, если в столбце P наименование "материал". Хотелось бы очистить их макросом, так как условие - именно пустые ячейки без формул. В примере, данные которые нужно очистить, выделены красным цветом
Поиск на соседнем листе суммы чисел по определенному названию, Помогите "модернизировать" существующий макрос
 
Добрый день! Ранее, не без помощи форума сделал макрос, который по имени листа и определенному названию, ищет первые 3 непустых значения справа от названия на этом, находящимся в этой же книге листе, и выводит их в таблицу. Проблема в том, что существующий макрос ищет эти значения только для первого сверху вхождения названия на соответствующем листе. Теперь столкнулся с тем, что это название на листе может встречаться несколько раз и в таком случае нужно искать суммы первых трех значений. Постарался все подробно расписать в примере. В нем же находится существующий макрос, который хотелось бы модернизировать
Копирование данных из браузера (не IE) в Excel
 
Подскажите, возможно ли макросом скопировать содержимое запущенного активного окна браузера (Хром или Файерфокс) в ячейку Excel? В браузере в этот момент отображается одна текстовая строка. Конечно, вроде бы напрашивается сделать это через встроенное в Excel получение данных из интернета, но там проблема в том, что на сайте мудреная авторизация  
Действие подобное СУММЕСЛИ, только для критериев, расположенных горизонтально
 
Добрый день! Вроде задача простая, но никак не могу придумать. Помогите составить аналог формулы СУММЕСЛИ для горизонтального расположения критериев. Думаю в примере все понятно. В зависимости от значения "шапки" таблицы (в примере это название цвета), нужно вычислить сумму чисел, входящих в соответствующие столбцы (столбцов с одинаковым критерием может быть несколько)
Аналог всплывающего меню "число сохранено как текст" макросом
 
Добрый день! Подскажите, пожалуйста: в макросах совсем не силен. Есть таблица, часть чисел в которой отображается как текст. В Excel  при выборе такого диапазона в левом верхнем углу появляется желтый ромб с восклицательным знаком, при нажатии на котором всплывает меню: "Число сохранено как текст" и далее можно выбрать пункт "Преобразовать в число". Макрокордер такую последовательность действий никак не воспринимает. Если в макросе "подсветить" диапазон Range ("..."&"..."), как можно произвести замену аналогичную той, что можно сделать в Excel (на всякий случай приложил картинку)
Изменено: Валерий Анисомов - 31.08.2018 17:57:02
Поиск на соседнем листе числа или текста по определенному значению
 
Добрый день! Помогите, пожалуйста, подкорректировать формулу. В свое время встала задача поиска значений с другого листа по номеру этого листа. Сделал тогда формулу: с помощью формул ИНДЕКС и ДВССЫЛКА по номеру листа на нем искалось значение из одного фиксированного столбца и выводилось значение из другого фиксированного же столбца. Теперь данные на листах поменялись таким образом, что столбы перестали быть фиксированными, и теперь искомый текст может располагаться в диапазоне столбцов, а значения которые нужно вернуть находятся справа от искомого текста на некотором нефиксированнном расстоянии (первое число или текст справа от него). Помогите, пожалуйста, переделать формулу, чтобы поиск производился не в определенных столбцах, а в диапазоне. По этому тексту, конечно, сложно понять, но в примере постарался все расписать
Сослаться на ссылку текущего листа, ссылающуюся в свою очередь на другой лист, применение функции "СМЕЩ" в непростом случае
 
Добрый день! Есть книга с двумя листами. На втором листе содержится столбец с числами. На первом есть ссылка на число из вышеупомянутого столбца второго листа. Вопрос: как ссылаясь на ссылку (прошу прощения за тавтологию) можно на первом листе в столбце справа от ссылки вывести число, которое находится на втором листе на 2 строки выше? Есть простая функция "СМЕЩ", но проблема в том, что число находится на втором листе, а сослаться нужно именно на ту ссылку, что на первом. Возможно ли прописать такую формулу с помощью встроенных в excel формул без макросов? Понимаю, что звучит все запутанно, попытался вопрос понятней изложить в примере. Заранее благодарю за помощь
Поиск текста в текущей книге excel, макрос
 
Добрый день!
Возник вопрос по VBA. Имеется довольно большой макрос.
В начале идет кусок кода который выполняется в любом случае. Назовем его "Безусловный код". Далее в зависимости от условия: если в документе  хотя бы единожды содержится определенное словосочетание, например "ОПРЕДЕЛЕННОЕ СЛОВОСОЧЕТАНИЕ" (можно искать после выполнения "Безусловного кода"), то необходимо выполнить другой кусок кода, назовем его "Код выполняемый по условию". Если текст документа не содержит сочетания "ОПРЕДЕЛЕННОЕ СЛОВОСОЧЕТАНИЕ", то этот "Код выполняемый по условию" выполнять не нужно (как будто этого "Кода выполняемого по условию" и нет).
Что-то типа блок-схемы из воспоминаний о школьном курсе информатики  :)   :

Код
[Безусловный код];
If {Текст документа содержит сочетание "ОПРЕДЕЛЕННОЕ СЛОВОСОЧЕТАНИЕ"} then  [Код выполняемый по условию]
Else {Конец} 
Прошу помочь прописать это условие в VBA
Макрос для формулы "текст содержит"
 
Здравствуйте, уважаемые знатоки! Хотелось бы с помощью макроса решить такую задачу: имеется столбец (в примере это столбец B). В нем содержатся различные текстовые значения и может встречаться определенное слово / словосочетание (в примере это "КОДОВОЕ СЛОВО"). Хотелось бы чтобы происходила проверка диапазона ячеек столбца 1 (от B3 до конца таблицы) и в случае если текст ячейки диапазона столбца 1 содержит "КОДОВОЕ СЛОВО", то в соответствующую ячейку последнего столбца таблицы (в примере это столбик G) вставлялось значение из предпоследнего столбца (F в примере). Формулой легко это сделал, она в примере стоит, а вот в макросах не силен. Думаю тут будет буквально несколько строчек
СУММЕСЛИ с критерием больше определенного значения указанного в ячейке
 
Добрый день! Вопрос такой: как в формуле СУММЕСЛИ указать в качестве критерия значение превышающее число или дату указанную в определенной ячейке. В примере например: =СУММЕСЛИ(A2:A20;">08.02.2014";B2:B20). Такая формула считается. Но если дата 08.02.2014 постоянно меняется и указана в ячейке A22? Если прописать =СУММЕСЛИ(A2:A20;>A22;B2:B20), то ничего не считает. Подскажите синтаксис как описать такой критерий или, возможно, существует другая формула. Вроде условие простое, а придумать ничего не могу :(
Макрос для нахождения последнего значения в столбце
 
Здравствуйте. Прошу помощи по написанию мини-макроса. Есть таблица в определенном столбце которой (в примере "Столбец3" - C:C) с определенной ячейки (начала таблицы) прописаны данные различного типа. Эти данные идут вниз до конца таблицы (пустот нет). Хотелось бы чтобы посредством макроса активной становилась ячейка под этим столбцом (первое пустое значение внизу после данных столбца таблицы). И второй вопрос: как управлять перемещением из ячейки в ячейку? Каким кодом можно сделать активной ячейку слева/справа/сверху/снизу от активной?
Удаление верхнего колонтитула макросом
 
Не знаю, сможет ли кто-то помочь, очень уж специфична проблема, но все же задам вопрос. Есть куча файлов сконвертированных программой, которая автоматически и неотключаемо вбивает свое название в верхний колонтитул экселя. В этом документе потом выполняется макрос и название программы хотелось бы убрать именно макросом. Существует ли какой-то код чтобы убрать именно верхний колонтитул (нижний нужно оставить)? Пробовал автозаписью, но не всегда убирается этот дурацкий колонтитул после этого почему-то. Наверняка есть какой-то простой код для этого. Может кто знает?
Макрос для удаления столбцов по их названию
 
Подскажите, пожалуйста, код макроса для удаления столбцов по их названию. Во вложении пример. Нужно удалить все столбцы содержащие деньги. Всего встречается 4 названия: Цена за единицу, руб; Сметная (договор-ная) стои-мость, руб; стои-мость; стои-мость факти-чески выпол-ненных работ с начала строит-ва, руб. В примере эти столбцы закрашены желтым и их нужно полностью удалить как если бы щелкнули правой кнопкой мыши на названии столбца и выбрали "удалить". Мне кажется что макрос будет несложным, но от программирования я весьма далек  :(
Плавное увеличение чисел
 
Здравствуйте! Никак не могу решить такую задачу. Есть ряд повторяющихся значений. Нужно сделать так, чтобы числа увеличивались постепенно. Т.е. я задаю первое и последние значения, и получается цепочка последовательно увеличивающихся чисел (чтобы каким-то образом рассчитался шаг увеличения), но сумма чисел не меняется. В примере я постарался подробно все показать. Нужно из верхнего ряда чисел получить нижний
Макрос для разбиения данных, разделенных запятой
 
Помогите, пожалуйста с написанием макроса. Имеется несколько строчек с численно-буквенными данными (марками) разделенными между собой символом ";" (точка с запятой). Нужно, чтобы каждая марка, т.е. отделенное от других точкой с запятой значение отображалось в отдельной ячейке. Думаю все наглядно показано в приложенном примере. Думаю все тут не сложно, но программированием не владею совершенно.
Убрать надпись "Microsoft Excel - " из панели задач
 
В Windows XP  при открытии документа 2007 excel'я, внизу на панели задач пишется "Microsoft Excel - ", а потом уже имя документа, что совсем неудобно, особенно когда открыто много документов, ведь имена практически не помещаются. Во многих других программах, например в опере 10, пишется сразу имя страницы. Можно ли как-нибудь убрать эту надпись "Microsoft Excel", чтобы писалось имя файла. Ведь по значку и так ясно, что это за тип файла.
Страницы: 1
Наверх