![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 23.03.2009
Сообщений: 14
|
![]()
Есть столбец с данными, необходимо заменить значение после запятой с нулем на значение без нуля (:0594 на :594). Помогите решить этот вопрос.
|
![]() |
![]() |
![]() |
#2 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,858
|
![]()
Решается элементарно:
1) Выделяем нужный диапазон ячеек (можно, к примеру, выделить ячейку А1, после чего нажать Ctrl + A) 2) Нажимаем Ctrl + H (или Правка - Заменить) 3) Вводим в поле для поиска :0, а в поле для замены - : 4) Нажимаем Заменить все |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 23.03.2009
Сообщений: 14
|
![]()
А если вот такие значения- :010703:0454 ?
|
![]() |
![]() |
![]() |
#4 | |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,858
|
![]() Цитата:
Или не надо? Но эти нюансы в формулировке задачи отсутствуют... Откуда нам знать, что может встретиться в файле? В прикреплённом примере таких значений нет... |
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 23.03.2009
Сообщений: 14
|
![]()
Да, в начале как-раз и не нужно менять!
|
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 21.07.2008
Сообщений: 57
|
![]()
Пусть в столбце А - исходные данные, тогда в столбце В нужно написать такую формулу:
1. Если нужно убрать все нули , то =ПОДСТАВИТЬ(A1;"0";"") 2. Если нужно убрать нули только после двоеточия =ЛЕВСИМВ(A1;(ПОИСК(":";A1)))&(ПОДСТ АВИТЬ(ПРАВСИМВ(A1;(ДЛСТР(A1)-ПОИСК(":";A1)));"0";"")) но это подойдет, если одно двоеточие А так, макросом быстро и просто можно сделать |
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 23.03.2009
Сообщений: 14
|
![]()
Двоеточия могут встречаться несколько раз (это фрагмент). Необходимо удалить нули после последнего двоеточия !!!!
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 21.07.2008
Сообщений: 57
|
![]()
Если такие ограничения, то только макросом наверное . У меня вот такое получилось: (вешаем макрос на нужный лист книги на событие change)
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then If Cells(Target.Row, 1) <> "" Then s = Cells(Target.Row, 1) s = StrReverse(s) k = InStr(s, ":") s = Left(s, InStr(s, ":")) s = StrReverse(s) s = Replace(s, "0", "") Cells(Target.Row, 2) = Left(Cells(Target.Row, 1), Len(Cells(Target.Row, 1)) - k - 1) & s Cells(Target.Row + 1, 1).Select Else: Cells(Target.Row, 2) = "" End If End If End Sub Надеюсь, что смогла помочь |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Замена кода программы с Delhi5 на Delhi7 либо замена базы данных с Acessa на MySQL | DorianLeroy | Фриланс | 8 | 18.02.2009 18:52 |
просумировать по формату | StasSv | Microsoft Office Excel | 1 | 16.12.2008 09:59 |
Замена | Патрон | Общие вопросы Delphi | 6 | 05.11.2008 15:45 |
Замена | Dr.Badnezz | Общие вопросы Delphi | 11 | 23.09.2008 17:17 |
разложить поле MEMО в БД по формату | lord | БД в Delphi | 15 | 19.02.2007 12:28 |