Записали в макрос условия для переименования, все отлично работает, кроме двух случаев: 1. Если текст обрамлен кавычками, он его не видит. (пробовали в условия вписать разные типы кавычек, даже звездочки ставили - все равно оставляет такие ячейки нетронутыми) 2. Если есть наименования однокоренные, то выходит путаница. Например есть "хлеб" для которого задано условие переименовать в "выпечка" и есть "хлеб ржаной", для которого еще что-нибудь задано. Но второе правило он игнорирует и переименовывает последний вариант в "выпечка ржаной". Приложила пример. Что подписать, чтобы он игнорил кавычки и переименовывал именно то, полное сочетание слов, которое вписали, не трогая значения, которые лишь содержат эти слова внутри более развернутого наименования?
Вновь здравствуйте!
Записали в макрос условия для переименования, все отлично работает, кроме двух случаев: 1. Если текст обрамлен кавычками, он его не видит. (пробовали в условия вписать разные типы кавычек, даже звездочки ставили - все равно оставляет такие ячейки нетронутыми) 2. Если есть наименования однокоренные, то выходит путаница. Например есть "хлеб" для которого задано условие переименовать в "выпечка" и есть "хлеб ржаной", для которого еще что-нибудь задано. Но второе правило он игнорирует и переименовывает последний вариант в "выпечка ржаной". Приложила пример. Что подписать, чтобы он игнорил кавычки и переименовывал именно то, полное сочетание слов, которое вписали, не трогая значения, которые лишь содержат эти слова внутри более развернутого наименования?WolFoX
Например есть "хлеб" для которого задано условие переименовать в "выпечка" и есть "хлеб ржаной", для которого еще что-нибудь задано. Но второе правило он игнорирует и переименовывает последний вариант в "выпечка ржаной".
В файле из поста 1 нет такого примера. Если слово "хлеб" занимает всю ячейку (то есть кроме слова "хлеб", в ячейке ничего нет), то в методе "Replace", в параметре "LookAt" укажите, что искомый текст должен занимать всю ячейку: [vba]
Код
LookAt:=xlWhole
[/vba] Если же в ячейке кроме слова "хлеб" может быть и другой текст, тогда наверное потребуется заменить метод "Replace" другим кодом. Для этого нужно смотреть файл пример.
Например есть "хлеб" для которого задано условие переименовать в "выпечка" и есть "хлеб ржаной", для которого еще что-нибудь задано. Но второе правило он игнорирует и переименовывает последний вариант в "выпечка ржаной".
В файле из поста 1 нет такого примера. Если слово "хлеб" занимает всю ячейку (то есть кроме слова "хлеб", в ячейке ничего нет), то в методе "Replace", в параметре "LookAt" укажите, что искомый текст должен занимать всю ячейку: [vba]
Код
LookAt:=xlWhole
[/vba] Если же в ячейке кроме слова "хлеб" может быть и другой текст, тогда наверное потребуется заменить метод "Replace" другим кодом. Для этого нужно смотреть файл пример.Karataev
Сообщение отредактировал Karataev - Вторник, 27.09.2016, 16:55