Макрос - удаление текста между символами в ячейке - VBA
Формулировка задачи:
Есть эксель файл, в определенном столбце на каждой строке текст с html тегами. Нужен макрос, чтобы он чистил все теги, кроме абзацев. В целом я представляю как это сделать, с вба более-менее знаком, но ни как не могу найти чем это сделать. Нашел много информации как работать с ячейками целиком, а не с частью ее содержимого.
Мое представление макроса таково: цикл, проверочка, если находит открывающий символ тега ("<"), еще один иф, проверяющий, не абзацевый ли это тег ("<p>") если он, чистит стиль абзаца (все символы между "p" и ">") и продолжает искать дальше, если нет, то тупо затирает весь тег ( от "<" до ">"). Ну саму зачистку я бы сделал либо записывая позицию крайних символов, и удаляя символы между этими позициями, либо сохраняя в новую переменную новые "данные", уже исключая не нужные теги.
Но
, нужно учесть, что кол-во символов в тексте может быть совершенно непредсказуемым (от 50 символов в ячейке, до 30к, а того и больше, из-за того, что стиль задается иногда каждой строке, и даже пустой, и даже иногда разные стили внутри одной строки). Количество ячеек в этом столбце тоже может быть случайным (20 - 20к). Ну, проверить, не пустая ли следующая ячейка, мне не составит труда самому, вся проблема именно в работе с текстом внутри ячейки. Буду благодарен за любую помощь: похожие макросы, справочники подходящие по теме, готовый макрос, задача направления ссылками...Решение задачи: «Макрос - удаление текста между символами в ячейке»
textual
Листинг программы
.Pattern = "<([^p]|\w{2,})/>"
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д