Страницы: 1
RSS
Find и Nothing - как исключить пусто из поиска?
 
Есть макрос с Find()  и результат If Not ... Is Nothing Tnen

Работает все нормально. Но заметил, когда в диапазоне поиска есть пустые ячейки, то ...на пусто переносит с пусто из диапазона поиска.

Как это можно исправить?

На Лист2 переходит слово Game со строки пустой ячейки Лист1
Изменено: Marat Ta - 03.03.2021 13:39:35
 
Можно, например, добавить проверку на пустую ячейку после "If Not ... Is Nothing Tnen"
Код
If Not cell.Value = "" Then
 
Александр Макаров, Спасибо. Работает.
Варианта сразу исключить из поиска, как я понял, нет?
Необходимости уже нет, просто для интереса.
Изменено: Marat Ta - 03.03.2021 13:53:06
 
Если это не сразу, то что есть сразу?
 
Можно и не проверять, тогда проверку на "пусто" поставьте после "For i=2..."
Код
if not sh2.Cells(i, 1).value="" then
 
Цитата
Marat Ta написал:
Варианта сразу исключить из поиска, как я понял, нет?
Вы же циклом по ячейкам идете, а там есть и пустые. Поэтому либо до строки
Код
Set cell = sh.Columns(9).Find(sh2.Cells(i, 1))
проверять не пустая ли ячейка, которую надо искать, либо после(как уже показали). Это самые действенные варианты, на самом деле.


P.S. Кстати, вот этот блок:
Код
For j = 2 To 10
    Cells(i, j).Borders.Weight = xlThin
    Cells(i, j) = Sheets(1).Cells(CurRow, j)
Next j
можно заменить более быстрым(без цикла)
Код
Cells(i, 2).Resize(, 9).Borders.Weight = xlThin
Cells(i, 2).Resize(, 9).Value = Sheets(1).Cells(CurRow, 2).Resize(, 9).Value
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Да так лучше, зачем зря  Find гонять по диапазону. Спасибо. Все оказывается так просто.
Изменено: Marat Ta - 03.03.2021 14:02:08
 
Цитата
Marat Ta: как исключить пусто из поиска?
ответ по цитате, не вникая в задачу (сколько можно):
Процедура и функция
Принцип: функция преобразует переданный диапазон, оставляя только ячейки со значениями или формулами. Используются методы, аналогичные ручному F5 —> Выделить —> Константы/Формулы
Изменено: Jack Famous - 03.03.2021 14:29:32
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Страницы: 1
Наверх