Добрый вечер/день. Ранее создавал подобную тему, но в итоге решение оттуда не подошло.
У меня есть столбик с ячейками. Этот столбик нельзя фильтровать/сортировать. Надо найти все ячейки и выделить их все, в которых ДЛСТР<=60
То есть задача в автоматическом выделии их, как бы, если бы я делал это с помощью CTRL вручную. То есть, какую-то функцию или что мне надо использовать чтобы по завершению я мог нажать CTRL+F и заменить в этих ячейках кое-какие данные.
Добрый вечер/день. Ранее создавал подобную тему, но в итоге решение оттуда не подошло.
У меня есть столбик с ячейками. Этот столбик нельзя фильтровать/сортировать. Надо найти все ячейки и выделить их все, в которых ДЛСТР<=60
То есть задача в автоматическом выделии их, как бы, если бы я делал это с помощью CTRL вручную. То есть, какую-то функцию или что мне надо использовать чтобы по завершению я мог нажать CTRL+F и заменить в этих ячейках кое-какие данные.AdwordsDirect
Запустите макрос - появится два диалоговых окна - укажите в них что искать и на что заменить - макрос сделает замену во всех ячейках столбца "A", в которых символов <=60.
[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]
Запустите макрос - появится два диалоговых окна - укажите в них что искать и на что заменить - макрос сделает замену во всех ячейках столбца "A", в которых символов <=60.
[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
Запустите макрос - появится два диалоговых окна - укажите в них что искать и на что заменить - макрос сделает замену во всех ячейках столбца "A", в которых символов <=60.
Работает скрипт, но как-то выборочно. Например он легко заменя "||" на "}{" и прочие мелочи. Но текст не хочет менять. То есть, он меняет только символы, цифры по отдельности, например заменить 5 на 10.. Но не может выполнить: [Гарантия 5 лет] заменить на [Гарантия 5 лет]||[РОСТЕСТ]
Запустите макрос - появится два диалоговых окна - укажите в них что искать и на что заменить - макрос сделает замену во всех ячейках столбца "A", в которых символов <=60.
Работает скрипт, но как-то выборочно. Например он легко заменя "||" на "}{" и прочие мелочи. Но текст не хочет менять. То есть, он меняет только символы, цифры по отдельности, например заменить 5 на 10.. Но не может выполнить: [Гарантия 5 лет] заменить на [Гарантия 5 лет]||[РОСТЕСТ]AdwordsDirect
Сообщение отредактировал AdwordsDirect - Пятница, 07.04.2017, 08:55
В ячейке нет текста "[Гарантия 5 лет]", а есть текст "|Гарантия 5 лет]". Слева не скобка, а вертикальная черта. PS. Не цитируйте посты целиком. Чтобы ответить не нужно щелкать кнопку "Цитата", а достаточно прокрутить страницу вниз и там будет поле для написания поста. Если хотите к кому-то обратиться, то просто напишите ник.
В ячейке нет текста "[Гарантия 5 лет]", а есть текст "|Гарантия 5 лет]". Слева не скобка, а вертикальная черта. PS. Не цитируйте посты целиком. Чтобы ответить не нужно щелкать кнопку "Цитата", а достаточно прокрутить страницу вниз и там будет поле для написания поста. Если хотите к кому-то обратиться, то просто напишите ник.Karataev