Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Изменить макрос. Поиск и замена по условию (ДЛСТР <=60) на.. - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Изменить макрос. Поиск и замена по условию (ДЛСТР <=60) на.. (Формулы/Formulas)
Изменить макрос. Поиск и замена по условию (ДЛСТР <=60) на..
AdwordsDirect Дата: Среда, 12.04.2017, 19:27 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 148
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Добрый день, есть такой макрос-матрос:

[vba]
Код

Sub поиск_и_замена()
    
    Dim strOld As String, strNew As String
    Dim arr(), lr As Long, i As Long
    
    strOld = InputBox("Найти:")
    If strOld = "" Then Exit Sub
    strNew = InputBox("Заменить:")
    
    lr = Cells(Rows.Count, "A").End(xlUp).Row
    arr() = Range("A1:A" & lr).Value
    
    For i = 1 To UBound(arr)
        If Len(arr(i, 1)) <= 60 Then
            arr(i, 1) = Replace(arr(i, 1), strOld, strNew, , , vbTextCompare)
        End If
    Next i
    
    Range("A1:A" & lr).Value = arr()
    
End Sub
[/vba]

Макрос успешно ищет и заменяет по условию ДЛСТР.

Нужно как-то переделать его, под другие условия, а конкретно:
просто чтоб он добавлял к ячейкам которые ДЛСТР <=60 "текст".
Благодарю!
Продолжается серия без-файловых вопрос-ответов.
Боюсь что надо было тему создавать в VBA отсеке, каюсь.


Сообщение отредактировал AdwordsDirect - Среда, 12.04.2017, 19:29
 
Ответить
СообщениеДобрый день, есть такой макрос-матрос:

[vba]
Код

Sub поиск_и_замена()
    
    Dim strOld As String, strNew As String
    Dim arr(), lr As Long, i As Long
    
    strOld = InputBox("Найти:")
    If strOld = "" Then Exit Sub
    strNew = InputBox("Заменить:")
    
    lr = Cells(Rows.Count, "A").End(xlUp).Row
    arr() = Range("A1:A" & lr).Value
    
    For i = 1 To UBound(arr)
        If Len(arr(i, 1)) <= 60 Then
            arr(i, 1) = Replace(arr(i, 1), strOld, strNew, , , vbTextCompare)
        End If
    Next i
    
    Range("A1:A" & lr).Value = arr()
    
End Sub
[/vba]

Макрос успешно ищет и заменяет по условию ДЛСТР.

Нужно как-то переделать его, под другие условия, а конкретно:
просто чтоб он добавлял к ячейкам которые ДЛСТР <=60 "текст".
Благодарю!
Продолжается серия без-файловых вопрос-ответов.
Боюсь что надо было тему создавать в VBA отсеке, каюсь.

Автор - AdwordsDirect
Дата добавления - 12.04.2017 в 19:27
_Boroda_ Дата: Среда, 12.04.2017, 19:50 | Сообщение № 2
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация: 6481 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Ну если без файла, то так?
[vba]
Код
Sub поиск_и_замена()
    Dim arr(), lr As Long, i As Long
    lr = Cells(Rows.Count, "A").End(xlUp).Row
    arr() = Range("A1:A" & lr).Value
    For i = 1 To UBound(arr)
        If Len(arr(i, 1)) <= 60 Then
            arr(i, 1) = arr(i, 1) & "текст"
        End If
    Next i
    Range("A1:A" & lr).Value = arr()
End Sub
[/vba]


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеНу если без файла, то так?
[vba]
Код
Sub поиск_и_замена()
    Dim arr(), lr As Long, i As Long
    lr = Cells(Rows.Count, "A").End(xlUp).Row
    arr() = Range("A1:A" & lr).Value
    For i = 1 To UBound(arr)
        If Len(arr(i, 1)) <= 60 Then
            arr(i, 1) = arr(i, 1) & "текст"
        End If
    Next i
    Range("A1:A" & lr).Value = arr()
End Sub
[/vba]

Автор - _Boroda_
Дата добавления - 12.04.2017 в 19:50
AdwordsDirect Дата: Четверг, 13.04.2017, 09:40 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 148
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Спасибо!


Сообщение отредактировал AdwordsDirect - Четверг, 13.04.2017, 09:40
 
Ответить
СообщениеСпасибо!

Автор - AdwordsDirect
Дата добавления - 13.04.2017 в 09:40
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Изменить макрос. Поиск и замена по условию (ДЛСТР <=60) на.. (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!