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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 06.02.2013, 16:18   #1
tonpok666
 
Регистрация: 06.02.2013
Сообщений: 3
По умолчанию Макрос для подстановка искомого текста из одной ячейки в другую по столбцу

Помогите пожалуйста абсолютному чайнику сделать макрос.
Есть задача во вложенном примере построчно последовательно находить тектст "отсев" в столбце B и если искомый текст содержиться в ячейке, то заменять текущее значение соотвтетсвующей ячейки в столбце А на "Отсев опилок", а если не содержиться, то оставлять значение в ячейке столбца А без изменений.
Вложения
Тип файла: rar example.rar (6.7 Кб, 29 просмотров)
tonpok666 вне форума Ответить с цитированием
Старый 06.02.2013, 16:47   #2
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

без макросов:
отмечаете столбец В,
Ctrl+H;
поле найти: отсев
поле заменить: Отсев опилок
жмете кнопку "заменить все"

удачи!
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 06.02.2013, 16:50   #3
tonpok666
 
Регистрация: 06.02.2013
Сообщений: 3
По умолчанию

Все не так просто. Замену нужно сделать не в столбце B, а в столбце A.
tonpok666 вне форума Ответить с цитированием
Старый 06.02.2013, 17:01   #4
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Тупо в лоб, зато просто и понятно:

Код:
Option Compare Text

Sub tt()
    Dim cc As Range
    Application.ScreenUpdating = False
    For Each cc In ActiveSheet.UsedRange.Columns(2).Cells
        If cc.Value Like "*отсев*" Then cc.Offset(, -1).Value = "Отсев опилок"
    Next
    Application.ScreenUpdating = True
End Sub
На миллион строк конечно нужно делать иначе, ибо будет тормозить...
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 07.02.2013, 09:33   #5
tonpok666
 
Регистрация: 06.02.2013
Сообщений: 3
По умолчанию

Все отлично работает, спасибо большое. В принципе, даже с достаточно большим количеством строк вполне нормально.
tonpok666 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перенос информации из одной ячейки в другую FLIBER Microsoft Office Excel 6 18.11.2012 23:38
прописать в Excel перемещение из одной ячейки в другую mssod Microsoft Office Excel 5 21.02.2012 23:42
макрос для разбивки текста на ячейки Ksiaze Microsoft Office Excel 2 24.05.2011 00:49
макрос для копирования строк из одной таблицы в другую IRI_NA Microsoft Office Excel 9 25.01.2010 20:55
Передача данных из одной таблицы в другую, при выборе одной ячейки MickMick Microsoft Office Excel 6 06.10.2008 13:57