Здравствуйте! Надо сделать макрос (или по другому как то) для гугл таблиц (как вариант- ексель) для замены текста в 1м столбце таблицы в зависимости от условий на другом листе. Речь идёт о номерах телефонов. Номера должны меняться если будет найдено совпадение в списке условий. Напр., есть номер 1234567, и есть условие: "если номер начинается с 1234 то поменять эти цифры на 7788". То есть номер должен стать 7788567 Условий таких около 30. Тут пример https://goo.gl/hHsDpy
ну скачайте - будем вам в ексель ) . Я больше привык в гугл таблицах работать, но если дадите решение в ексель (у меня 2016 версия) то буду там применять
oleg.orlov1 написал: ну скачайте - будем вам в ексель )
ВЫПИСКА из ПРАВИЛ
Цитата
2.2. Опишите максимально подробно вашу задачу и желаемый результат. Желательно уточнить вашу версию Excel. 2.3. Приложите файл(ы) с примером (общим весом не более 300Кб) в реальной структуре и форматах данных того, что есть сейчас и того, что хотелось бы на выходе.
a.i.mershik написал: кажется так и без макроса для данного примера.
=LOOKUP(2;1/SEARCH(условие!$A$1:$A$2;исходник!$A1);условие!$B$1:$B$2) разве будет каждое значение проверять по всему списку условий и менять в случае совпадения?
oleg.orlov1, формула в желтом столбце. Решает ваш вопрос подставляет и меняет даныне но только не в той ячейке которой хотите а рядом. если надо в столбце А - то только макрос.
да, теперь понял, сколько строк с условиями столько и максимальная цифра в формуле. Работает. Только вот одно условие надо соблюсти (не учёл его в описании)- проверять (и менять) надо только числа с самого начала (там замена кодов телефона) чтобы не меняло фрагмент в середине числа.
oleg.orlov1 написал: проверять (и менять) надо только числа с самого начала
это теперь работает, но всё же есть 2 проблемы: 1. совпавший фрагмент надо менять но оставшиеся цифры надо добавлять к результату, к примеру был номер 123111 есть условие что 123 поменять на 222. Результат должен быть не 222 (как сейчас) а 222111 2. если совпадений не обнаружено то в столбец В надо копировать номер без изменений (сейчас выдаёт ошибку, но если поменять в конце формулы "error" на А1 то всё нормально, так что вроде как п.2 решён)
oleg.orlov1 написал: оставшиеся цифры надо добавлять к результату
да, это теперь появилось в присланном вами файле. Но возникли другие проблемы. Как пример- даю два файла, в первом при добавлении новых значений при сохранении условий- результат #N/A (если добавлять аналогичные предыдущим значения- тогда работает). Во втором- поменял условия- везде в результатах #N/A
Олег Орлов, ну тут проблема в том что если будет написано что формулой ищет 1234567890 а другой будет 2345678901 и а в списке условий они будут 12345 и 23456 - то он найдет последнее в столбце...
a.i.mershik, возможно я неправильно сформулировал задачу, так я повторю. Есть список условия типа "при нахождении вначале числа 123 менять на 000", а "при нахождении 1234 менять на 111". Таких условий как оказалось более 500 шт. Периодически надо проверять файлы где в колонке А находятся исследуемые числа (номера телефонов). В файлах может быть и 30000 строк.
Олег Орлов, сделайте пример более нормальный столбец исходные данные, столбец так должно получится это все руками и более близко к реальности а не ваши 123 такие телефоны только внутренние есть