![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 22.09.2014
Сообщений: 27
|
![]()
Добрый день!
Мне необходимо настроить 3 макроса: 1. Скрытие столбцов по диапазону (например, A:Z), ячейки которых по определенной строке (например, строке "1") содержат цифру "1" (или какой-нибудь текст (например, "да")). 2. Удаление таких столбцов. 3. Добавление слева от них одного (или двух, трех и т.п.) столбцов. Подскажите, пожалуйста, что в тексте таких макросов необходимо прописать. Буду очень благодарен за помощь! С уважением, Артем. |
![]() |
![]() |
![]() |
#2 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,858
|
![]()
по пунктам 1 и 2 - вы пробовали найти готовый макрос в инете?
почему-то все, кто ищет, - сразу находит... http://excelvba.ru/code/ConditionalRowsDeleting |
![]() |
![]() |
![]() |
#3 | |
Пользователь
Регистрация: 22.09.2014
Сообщений: 27
|
![]() Цитата:
На текущий момент я написал макрос на скрытие строк: For Each c In Range("a1:a5000") If c = 1 Then c.Select Selection.EntireRow.Hidden = True End If Next В таком же виде - по удалению строк. Но для скрытия, удаления столбцов этот макрос настроить у меня не выходит. Можете подсказать, что надо мне сделать? |
|
![]() |
![]() |
![]() |
#4 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,858
|
![]()
а всё аналогично для столбцов:
Код:
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 22.09.2014
Сообщений: 27
|
![]()
Спасибо большое!
|
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 22.09.2014
Сообщений: 27
|
![]()
Извините, пожалуйста!
Как все-таки мне настроить макрос по пункту 3 моего вопроса (Добавление слева от столбца в конкретном диапазоне одного (или двух, трех и т.п.) столбцов)? |
![]() |
![]() |
![]() |
#7 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,858
|
![]()
добавляем справа 2 столбца:
Код:
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 22.09.2014
Сообщений: 27
|
![]()
Круто, большое спасибо! Буду использовать такой код.
А есть какая-нибудь возможность на добавление столбцов слева? |
![]() |
![]() |
![]() |
#9 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,858
|
![]()
offset(,1) - это смешение вправо на один столбец, перед вставкой
если смещение не делать - вставится перед столбцом c.EntireColumn.offset(,0).resize(,2 ).Insert или c.EntireColumn.resize(,2).Insert |
![]() |
![]() |
![]() |
#10 |
Пользователь
Регистрация: 22.09.2014
Сообщений: 27
|
![]()
Здравствуйте!
Извините, пожалуйста, но возникла еще одна проблема. Я написал макрос по вставке столбца влево: For Each c In Range("c1:z1") If Val(c) = 1 Then c.EntireColumn.Offset(, 0).Resize(, 1).Insert End If Next По такому макросу получаются следующие действия. 1) Находится первая 1 в диапазоне c1:z1. 2) Вставляется слева от этой 1 столбец. 3) Дальше находится опять эта 1 и опять вставляется слева от нее еще один столбец. В результате, вставляются столбцы от этой единицы до самого упора листа, при этом другие единицы указанного диапазона по макросу даже не выявляются и слева от них, как следствие, не вставляется столбец. Как я понимаю, чтобы решить эти проблемы нужно, чтобы после вставки столбца слева от каждой найденной 1, эту 1 макрос должен удалить. Скажите, пожалуйста: 1. Что надо указать в макросе, чтобы удалилась эта 1? 2. Что надо прописать в макросе, чтобы указанные проблемы решались без удаления найденных 1? Я буду очень признателен за помощь! С уважением, Артем. |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Макрос "Скрытие строк при условии" | Kapkom | Microsoft Office Excel | 2 | 22.09.2014 16:57 |
Постоянно слетает галочка "автоматически" в "Параметры Excel", "Формулы", "Вычисления в книге" | Alexsandrr | Microsoft Office Excel | 4 | 19.10.2013 14:22 |
Создать класс "Фигура", от него наследованием создать 3 класса ("треугольник", "четырехугольник", "окружность") | funnyy | Помощь студентам | 3 | 17.10.2012 17:40 |
Скрытие и отображения формы "Календарь" | MickMick | Microsoft Office Excel | 10 | 06.12.2009 00:37 |
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" | aleksei78 | Microsoft Office Excel | 13 | 25.08.2009 12:04 |