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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.03.2010, 16:44   #11
Aneli
Пользователь
 
Регистрация: 23.11.2009
Сообщений: 16
По умолчанию

о-ля-ля!!!!! вот это да!!!работает).спасибо Вам огромное!!!!!!
Aneli вне форума Ответить с цитированием
Старый 25.03.2010, 15:44   #12
Aneli
Пользователь
 
Регистрация: 23.11.2009
Сообщений: 16
По умолчанию

еще есть одна огромная просьба. возможно ли изменить этот макрос, удалялись но одновременно и сохранялись на лист 3. тобишь с листа 1(базового) выбирались строки, значение ячеек стоблца F = значениям столбца А листа 2, и сохранялись в лист 3. тогда получится что на листе 1-остануются строки, не имеющие дубликатов с листа 2, а на листе 3 будут отображены номера с листа 2 но с полными данными(взятыми с листа1).спасибо. если это не возможно, то возможен ли вариант что с листа 1 они не удаляются а просто выбираются данные на лист 3.
Aneli вне форума Ответить с цитированием
Старый 25.03.2010, 15:57   #13
Dophin
Форумчанин
 
Аватар для Dophin
 
Регистрация: 13.01.2010
Сообщений: 410
По умолчанию

Код:
Sub pp()
Dim i As Long, k As Long
Dim iL As Long, il2 As Long
Dim sh1 As Worksheet
Dim sh2 As Worksheet
Dim sh3 As Worksheet
Set sh1 = Sheets("лист1") 'лист с базой
Set sh2 = Sheets("Лист2") ' лист со списком
Sheets.Add.Name = "result" 'создание нового листа, можно удалить
Set sh3 = Sheets("result") ' куда будут складываться результаты
iL = sh1.Cells(Rows.Count, 1).End(xlUp).Row
il2 = sh2.Cells(Rows.Count, 1).End(xlUp).Row
For i = 1 To iL
If sh2.Range(sh2.Cells(1, 1), sh2.Cells(il2, 1)).Find(what:=sh1.Cells(i, 6), LookIn:=xlValues, lookat:=xlWhole) Is Nothing Then
k = k + 1
sh1.Range(sh1.Cells(i, 1), sh1.Cells(i, 17)).Copy sh3.Cells(k, 1)
End If
Next i
End Sub
Dophin вне форума Ответить с цитированием
Старый 25.03.2010, 16:29   #14
Aneli
Пользователь
 
Регистрация: 23.11.2009
Сообщений: 16
По умолчанию

по итогам макроса в result складываются строки с листа 1 без дубликатов. я возможно не совсем правильно выразила то что я хотела,но необходимо чтобы в result складывались строки, как раз те , которые удалились. тоесть, то что по результатам первого макроса удалялось с листа 1,чтобы сложилось в лист result.
Aneli вне форума Ответить с цитированием
Старый 25.03.2010, 17:01   #15
Dophin
Форумчанин
 
Аватар для Dophin
 
Регистрация: 13.01.2010
Сообщений: 410
По умолчанию

Код:
Sub pp()
Dim i As Long, k As Long
Dim iL As Long, il2 As Long
Dim sh1 As Worksheet
Dim sh2 As Worksheet
Dim sh3 As Worksheet
Set sh1 = Sheets("лист1") 'лист с базой
Set sh2 = Sheets("Лист2") ' лист со списком
Set sh3 = Sheets("Лист3") 'лист куда складывать
iL = sh1.Cells(Rows.Count, 1).End(xlUp).Row
il2 = sh2.Cells(Rows.Count, 1).End(xlUp).Row
For i = iL To 1 Step -1
If Not sh2.Range(sh2.Cells(1, 1), sh2.Cells(il2, 1)).Find(what:=sh1.Cells(i, 6), LookIn:=xlValues, lookat:=xlWhole) Is Nothing Then
k = k + 1
sh1.Range(sh1.Cells(i, 1), sh1.Cells(i, 17)).Copy sh3.Cells(k, 1)
sh1.Range(sh1.Cells(i, 1), sh1.Cells(i, 17)).Delete shift:=xlUp
End If
Next i
End Sub
Dophin вне форума Ответить с цитированием
Старый 25.03.2010, 17:18   #16
Aneli
Пользователь
 
Регистрация: 23.11.2009
Сообщений: 16
По умолчанию

1000 раз спасибо!!!!!!
Aneli вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удаление элементов строки s2 из строки s1 Ueshua Общие вопросы C/C++ 4 20.12.2009 13:06
Удаление из строки program123 Помощь студентам 4 21.05.2009 12:52
Удаление строки Minton87 Общие вопросы Delphi 4 07.05.2009 02:32
Помощь в Экселе с ячейкой avdlera91 Помощь студентам 0 18.04.2009 13:50