Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.12.2018, 18:02   #1
Обыватель
Пользователь
 
Регистрация: 21.01.2008
Сообщений: 98
По умолчанию Перечисление критериев для замены текста

Здравствуйте, уважаемые ремесленники!

Использую для замены код типа:

Selection.Replace "a", vbNullString, xlPart, xlByRows, True
Selection.Replace "b", vbNullString, xlPart, xlByRows, True
Selection.Replace "s", vbNullString, xlPart, xlByRows, True
Selection.Replace "d", vbNullString, xlPart, xlByRows, True

Регеню его в EXCEL с помощью сцепления значений "&"

Но понимаю, что это, мягко говоря, не правильно.

Подскажите, пожалуйста, как правильно записать перечисление критериев замены.

Спасибо.
Обыватель вне форума Ответить с цитированием
Старый 19.12.2018, 23:46   #2
Казанский
Старожил
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,133
По умолчанию

Цитата:
Сообщение от Обыватель Посмотреть сообщение
Регеню его в EXCEL с помощью сцепления значений "&"
На русский переведите, пожалуйста.
Цитата:
Сообщение от Обыватель Посмотреть сообщение
как правильно записать перечисление критериев замены
Например так
Код:
for each x in split("a b s d")
  Selection.Replace x, vbNullString, xlPart, xlByRows, True
next
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
Казанский вне форума Ответить с цитированием
Старый 20.12.2018, 13:04   #3
Обыватель
Пользователь
 
Регистрация: 21.01.2008
Сообщений: 98
По умолчанию

Что-то не выходит у меня "каменая чаша".

Походу в коде накосячил.

Посмотрите, пожалуйста, что не так?

Спасибо
Вложения
Тип файла: rar пример2.rar (495.9 Кб, 9 просмотров)
Обыватель вне форума Ответить с цитированием
Старый 20.12.2018, 13:27   #4
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Цитата:
Сообщение от Обыватель Посмотреть сообщение
Посмотрите, пожалуйста, что не так?
а "так" єто как?


Код:
Sub multiFindandReplace4()

Dim myList As Range, myRange As Range, cell As Range, fnd As Range
Set myList = Sheets("критерии").Range("A1:B5794") 'two column range with find/replace pairs
Set myRange = Sheets("результат").Range("A1:A16867") 'range to be searched and replace
For Each cell In myList.Columns(1).Cells
    myRange.Columns(1).Cells.Replace cell, cell.Offset(0, 1), xlPart, xlByRows, True
Next cell
End Sub
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 20.12.2018, 19:04   #5
Обыватель
Пользователь
 
Регистрация: 21.01.2008
Сообщений: 98
По умолчанию

Все работает =) Благодарю!
Обыватель вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
нужна программа для замены текста в файлах CorelDraw jut___ Фриланс 3 29.07.2015 18:25
ПО для синхронной замены текста на сайте и в SharePoint (или аналога) J.V. Софт 1 17.07.2014 14:54
Макрос для замены текста Georgetta Microsoft Office Word 8 05.08.2011 12:00
Создайте приложение для замены символов текста (VBA) riviera Помощь студентам 1 01.06.2009 22:35
Пользователь вводит число критериев от 1 до 30. К каждому из введенных критериев может ввести от 1 до 10 Biowulf86 Общие вопросы Delphi 6 22.09.2007 00:24