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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 20.07.2009, 19:54   #1
Garrison
Пользователь
 
Регистрация: 16.07.2009
Сообщений: 30
По умолчанию Поиск и замена в столбце

Всем привет.
Подскажите как произвести замену определенных символов по всему диапазону столбца?
Например:
На листе ексель есть какие-либо данные в столбце J.
Сколько строк будет в этом столбце неизвестно, может быть 100, а может 300....В этом столбике есть числовые данные, но в некоторых случаях заместо цифр присутствует буква N. Так вот, задача у меня состоит в том, чтобы после окончания загрузки данных в лист ексель, с помощью какой-либо комбинации клавиш заменить в столбце J данные со значением N, на ноль.
Подскажите как мне это реализовать.....а то голову сломал уже.....Думаю что с помощью цикла и функции Replace().....но что-то не получается у меня ничего.....
Garrison вне форума
Старый 20.07.2009, 21:19   #2
pivas
Форумчанин
 
Регистрация: 03.04.2009
Сообщений: 412
По умолчанию

Ctrl+H. Выделяйте столбец, пишите что на что заменить, жмите Заменить все.
pivas вне форума
Старый 20.07.2009, 22:20   #3
Garrison
Пользователь
 
Регистрация: 16.07.2009
Сообщений: 30
По умолчанию

Вот макрос, который получился после Ctrl+H
Sub Макрос1()

Selection.Replace What:="N", Replacement:="0", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
End Sub

Как мне прописать в этой процедуре диапазон столбца J?
Garrison вне форума
Старый 20.07.2009, 22:25   #4
pivas
Форумчанин
 
Регистрация: 03.04.2009
Сообщений: 412
По умолчанию

В начало кода:
Код:
Range("J1:J65536").Select
т.е. весь столбец J/
pivas вне форума
Старый 20.07.2009, 22:30   #5
Garrison
Пользователь
 
Регистрация: 16.07.2009
Сообщений: 30
По умолчанию

pivas
Спасибо)
Garrison вне форума
Старый 20.07.2009, 22:40   #6
Sasha_Smirnov
Особый статус
Участник клуба
 
Аватар для Sasha_Smirnov
 
Регистрация: 24.11.2008
Сообщений: 1,535
По умолчанию Или вот так

Вот ваш макрос без излишеств.

Код:
Sub EditColumn()

Columns("j").Select             'выделение 10-й колонки (J)'

Selection.Replace _
What:="N", Replacement:="0"     'замена в выделенном "N" на "0"

End Sub
Не худо было бы запрограммировать ещё и ввод номера столбца, да?
Sasha_Smirnov вне форума
Старый 21.07.2009, 04:38   #7
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Цитата:
Вот ваш макрос без излишеств.
Select - это излишество.
Код:
Sub EditColumn(): [J:J].Replace What:="N", Replacement:="0": End Sub
Чем шире угол зрения, тем он тупее.
SAS888 вне форума
Старый 21.07.2009, 05:27   #8
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Ну, если уж укорачивать макрос, то тогда так:
Код:
Sub EditColumn(): [J:J].Replace "N", 0: End Sub
EducatedFool вне форума
Старый 16.04.2010, 21:24   #9
onenures
Пользователь
 
Регистрация: 22.02.2010
Сообщений: 21
По умолчанию

А как сделать следующую замену значений в столбцах? Построчно, например, - в A1 есть какое-то значение, а в J1 есть текст с "ключевым" словом N. Как будет выглядеть макрос, заменяющий N на значение из A1, не трогая остальной текст в J1.

Ясно, что в

Код:
Sub EditColumn(): [J:J].Replace "N", 0: End Sub
надо заменить 0 на значение определенной ячейки, но как, не могу понять, надо знать VBA...
onenures вне форума
Старый 16.04.2010, 22:26   #10
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

например, так:
Код:
Sub EditCell(): [J1].Replace "N", [a1]: End Sub
EducatedFool вне форума
Закрытая тема


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Текст. ред. Поиск и замена Славный Общие вопросы Delphi 4 25.06.2008 20:09
Поиск свободных значений в столбце IDENTITY sqlnovichok SQL, базы данных 0 07.03.2008 09:12
Поиск и замена файлов steo_ler Помощь студентам 5 08.10.2007 15:01
Поиск и замена текста в файле VAbramyak Общие вопросы Delphi 3 04.04.2007 20:20
поиск и замена текста в RichEdit Vasya Помощь студентам 11 16.03.2007 06:48