Профессиональные приемы работы в Microsoft Excel

Пожалуйста, войдите или зарегистрируйтесь.


Расширенный поиск  

Новости:

Прикрепить к сообщению можно только файлы xls, gif, jpg, rar, zip,7z, bas, frm, cls, doc размером до 150 Кб.

Автор Тема: Макрос. Очистка ячеек по условию  (Прочитано 818 раз)

0 Пользователей и 1 Гость просматривают эту тему.

0mega

  • Постоялец
  • ***
  • Уважение: +5/-0
  • Оффлайн Оффлайн
  • Сообщений: 292

Всех с наступающим.

рабочая книга может содержать от 3 до 12 листов
1 лист - 1 таблица
 Кол-во строк в таблицах: 12 -150
Кол-во столбцов:  25-30
 Row 1:6 это шапка, таблица начинается с 7-ой строки
Макрос должен проверить таблицы на всех листах
Оставить все ячейки с формулами и очистить содержимое ячеек без формул (форматирование,  УФ, шрифт, размер ячеек не изменять)

P.S.
 если возможно , пусть макрос обрабатывает все открытые книги ( Book1, Book2  всего 4 шт)


Записан

Шпец Докапыч

  • Ветеран
  • *****
  • Уважение: +189/-4
  • Оффлайн Оффлайн
  • Сообщений: 1 919
  • ОБЛАДАТЕЛЬ УНИКАЛЬНЫХ НАВЫКОВ!!! :)
Re: Макрос. Очистка ячеек по условию
« Ответ #1 : 27.12.2017, 12:57:58 »

Sub valClear()
    On Error Resume Next
    For Each wb In Application.Workbooks
        If wb.Name Like "Book[1-4].*" Then
            For Each sh In wb.Sheets
                sh.Range("A7:AD156").SpecialCells(2, 23).ClearContents
            Next
        End If
    Next
End Sub
Записан
Знания недостаточно, необходимо применение. Желания недостаточно, необходимо действие. (с) Брюс Ли

0mega

  • Постоялец
  • ***
  • Уважение: +5/-0
  • Оффлайн Оффлайн
  • Сообщений: 292
Re: Макрос. Очистка ячеек по условию
« Ответ #2 : 27.12.2017, 14:24:59 »

Шпец Докапыч, здравствуйте

спасибо за ответ
 
Book1... Book4 - это условные имена
 Настояшие имена не имеют нумерации. Как прописать имена  списком: "Book", "Test", " Work", "Учет" ?
 Какое назначение "*"
"Book[1-4].*"
Записан

boa

  • Глобальный модератор
  • Старожил
  • *****
  • Уважение: +31/-0
  • Оффлайн Оффлайн
  • Сообщений: 525
  • Доброта спасет мир...
Re: Макрос. Очистка ячеек по условию
« Ответ #3 : 27.12.2017, 15:21:58 »

Добавьте еще один цикл по списку имен
Sub valClear()
    On Error Resume Next
    For Each wb In Application.Workbooks
      For Each SearchName In [{"Book", "Test", " Work", "Учет"}]
        If wb.Name Like SearchName & ".*" Then
            For Each sh In wb.Sheets
                sh.Range("A7:AD156").SpecialCells(2, 23).ClearContents
            Next
        End If
      Next
    Next
End Sub
Записан
Ничто не обходится нам так дешево и не ценится так дорого, как вежливость...  Мигель Сервантес де Сааведра

0mega

  • Постоялец
  • ***
  • Уважение: +5/-0
  • Оффлайн Оффлайн
  • Сообщений: 292
Re: Макрос. Очистка ячеек по условию
« Ответ #4 : 29.12.2017, 01:20:45 »

boa. спасибо
 а  ".*" - это что и как ?
Записан

vikttur

  • Глобальный модератор
  • Старожил
  • *****
  • Уважение: +48/-0
  • Оффлайн Оффлайн
  • Сообщений: 979
Re: Макрос. Очистка ячеек по условию
« Ответ #5 : 29.12.2017, 01:24:21 »

Это точка и любое количество (от 0 и больше) знаков после нее
Записан

0mega

  • Постоялец
  • ***
  • Уважение: +5/-0
  • Оффлайн Оффлайн
  • Сообщений: 292
Re: Макрос. Очистка ячеек по условию
« Ответ #6 : 29.12.2017, 16:32:03 »

спасибо, всех с наступающим
Записан
 



Темы без ответов

22.05.2018 11:38 Скрипт написать который допишет данные в файл 583
03.03.2018 00:00 Подсчет отработанного времени, за исключением заранее определенных перерывов 860
14.02.2018 10:11 Подготовить читабельную отчетность по платежам 833
23.01.2018 13:46 Найти вероятность повторной покупки 786
12.01.2018 23:56 Сделать отчет на Power BI (Dashboard) 1077
06.09.2017 10:43 Solver VBA не решает гиперболическое уравнение, но при этом решает гармоническое 1042
17.08.2017 12:15 Гиперссылка и фильтр одновременно макрос 1361
23.05.2017 11:20 Копирование данных из одной таблицы в умную таблицу по условию 2973
15.03.2017 15:45 автозамена картинок PowerPoint 1792
11.03.2017 13:43 Изменить нумерацию страниц 2019





Яндекс цитирования msexcel.ru Яндекс.Метрика

Страница сгенерирована за 0.143 секунд. Запросов: 105.