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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.02.2009, 18:53   #1
Franck
 
Регистрация: 09.02.2009
Сообщений: 5
По умолчанию Удаление строк по определенному критерию

Такая в общем проблема. Есть таблица, очень большая, два листа, на одном большой список инвентарных номеров по строкам, на другом список инвентарных номеров, которые нужно удалить из большого списка.
Я нашел тут один один макрос, чуть переделал его под себя:
Код:
Sub DelTel()
Dim iLastRow As Long, i As Long
Dim c As Range
Dim iTel As String
    iLastRow = Sheets("Лист1").Cells(65536, 1).End(xlUp).Row
    For i = 2 To iLastRow
        iTel = Sheets("Лист1").Cells(i, 1)
        Set c = Sheets("Лист2").Columns(2).Find(what:=iTel, lookat:=xlPart)
        If Not c Is Nothing Then c.EntireRow.Delete
    Next i
    MsgBox "Done!", vbInformation, ""
End Sub
Проблема в том, что он, если нужно удалить значение 450 к примеру, то он удалит и значение 3450, а вот его как раз не нужно.
Нужно чтобы он находил ячейки, которые были равны значению 450, а не содержали его и удалял. Помогите плиз, мне кажется, тут немного нужно поменять.
ЗЫ Что-то я совсем затупил под вечер.
Естественно, нужно было всего лишь исправить xlPart на xlWhole. Опозорился первым же постом.

Последний раз редактировалось Franck; 09.02.2009 в 19:29. Причина: Проблема решена
Franck вне форума Ответить с цитированием
Старый 09.02.2009, 19:46   #2
viter.alex
Балуюсь кодами
Участник клуба
 
Аватар для viter.alex
 
Регистрация: 09.01.2009
Сообщений: 1,837
По умолчанию

Не ошибается тот, кто ничего не делает. Я тоже, бывает, сяду тему на форум писать, и пока формулирую вопрос, нахожу ответ над которым битый час думал.
Лучше день потерять — потом за пять минут долететь!©
viter.alex вне форума Ответить с цитированием
Старый 11.02.2009, 12:49   #3
Рома_Чайник
 
Регистрация: 11.02.2009
Сообщений: 5
По умолчанию

А что нужно поменять если надо удалить строки где есть "-" мінус
Рома_Чайник вне форума Ответить с цитированием
Старый 11.02.2009, 16:25   #4
viter.alex
Балуюсь кодами
Участник клуба
 
Аватар для viter.alex
 
Регистрация: 09.01.2009
Сообщений: 1,837
По умолчанию

Вместо
Код:
iTel = Sheets("Лист1").Cells(i, 1)
Напиши
Код:
iTel = "-"
Лучше день потерять — потом за пять минут долететь!©
viter.alex вне форума Ответить с цитированием
Старый 16.02.2009, 11:27   #5
Рома_Чайник
 
Регистрация: 11.02.2009
Сообщений: 5
По умолчанию

Спасибо
Рома_Чайник вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
удаление строк alexk Microsoft Office Excel 24 15.02.2011 08:34
Удаление строк Dr.Badnezz Общие вопросы Delphi 1 07.10.2008 15:22
удаление строк Dime_x Microsoft Office Excel 2 07.10.2008 13:38
Запрет на удаление строк и столбцов Shavminator Microsoft Office Excel 2 12.01.2008 13:36
Удаление строк массива по условию Lexakazanskij Паскаль, Turbo Pascal, PascalABC.NET 9 12.09.2007 20:32