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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.01.2012, 10:32   #1
KOSTIK1
Форумчанин
 
Аватар для KOSTIK1
 
Регистрация: 06.10.2009
Сообщений: 193
Вопрос Разница двух диапазонов в список.

Всем доброе утро!
Прошу помощи в написании формулы для всплывающего списка, куда должны попасть значения которых нет в Диапазоне2.
То есть, Диапазон1-Диапазон2=ЗначениеВВсплывающемСписке. Пересмотрел много советов в инете, но как внести разницу в список, так и не нашёл. Спасибо заранее.
С Уважением, Костик
KOSTIK1 вне форума Ответить с цитированием
Старый 13.01.2012, 11:11   #2
staniiislav
Форумчанин
 
Аватар для staniiislav
 
Регистрация: 16.04.2010
Сообщений: 695
По умолчанию

Файлик со значениями нарисуйте
Единственный способ стать умнее, играть с более умным противником...
staniiislav вне форума Ответить с цитированием
Старый 13.01.2012, 12:05   #3
KOSTIK1
Форумчанин
 
Аватар для KOSTIK1
 
Регистрация: 06.10.2009
Сообщений: 193
По умолчанию

Вот файлик.
Вложения
Тип файла: zip Spisok.zip (4.2 Кб, 17 просмотров)
С Уважением, Костик
KOSTIK1 вне форума Ответить с цитированием
Старый 13.01.2012, 15:58   #4
KOSTIK1
Форумчанин
 
Аватар для KOSTIK1
 
Регистрация: 06.10.2009
Сообщений: 193
По умолчанию

Может есть у кого какая-либо идея?
С Уважением, Костик
KOSTIK1 вне форума Ответить с цитированием
Старый 13.01.2012, 16:13   #5
vikttur
Участник клуба
 
Регистрация: 16.05.2010
Сообщений: 1,249
По умолчанию

Идея есть: извлечение уникальных записей в диапазон на листе и формирование списка по этому диапазону.
vikttur вне форума Ответить с цитированием
Старый 13.01.2012, 17:59   #6
R Dmitry
Форумчанин
 
Регистрация: 07.03.2010
Сообщений: 796
По умолчанию

Код:
Sub Test()
Dim cn As ADODB.Connection, rs As ADODB.Recordset
Dim sCon$, StrSql$
Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset
sCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ThisWorkbook.FullName _
& ";Extended Properties=""Excel 8.0;IMEX=1;HDR=No"";"
cn.Open sCon
If Not cn.State = 1 Then Exit Sub
StrSql = "SELECT a.F1" _
& " FROM [DIAP1] as a LEFT JOIN [DIAP2] AS b ON a.F1 = b.F1" _
& " WHERE b.F1 Is Null"
rs.Open StrSql, cn, adOpenKeyset, adLockPessimistic
Cells(2, 10).CopyFromRecordset rs
rs.Close:  cn.Close
Set cn = Nothing: Set rs = Nothing
End Sub
Примерно так можно извлечь уникальные
Логика?!.... она где то рядом... E_mail: dg_rusak@mail.ru Если спасибо мало: Яндекс . Деньги - 41001731366021 WM R269866874234
R Dmitry вне форума Ответить с цитированием
Старый 13.01.2012, 18:37   #7
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Вариант:
Код:
Sub www()
    Dim x As Range, s$, i&, c As Range
    Set x = [a2:b20]: [n1].CurrentRegion.Clear
    With CreateObject("Scripting.Dictionary")
        .CompareMode = 1
        For Each c In x.Cells
            If c <> "" Then If Not .Exists(c) Then .Item(c) = c
        Next
        [n1].Resize(.Count) = Application.Transpose(.items)
    End With
    Sheets(1).[c2:c22].Validation.Delete
    Sheets(1).[c2:c22].Validation.Add Type:=3, Formula1:="=" & [n1].CurrentRegion.Address
End Sub
Вложения
Тип файла: zip Spisok.zip (11.6 Кб, 12 просмотров)
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Старый 13.01.2012, 19:08   #8
KOSTIK1
Форумчанин
 
Аватар для KOSTIK1
 
Регистрация: 06.10.2009
Сообщений: 193
По умолчанию

Спасибо kuklp, R Dmitry и vikttur, но мне желательно формулой. На листе уже есть два диапазона - DIAP1 и DIAP2 - если возможно использовать их.
С Уважением, Костик
KOSTIK1 вне форума Ответить с цитированием
Старый 13.01.2012, 19:14   #9
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

Мне кажется, что Сергей напутал.
Нужно сперва заполнить словарь из B, затем проверить по словарю A.
И те значения, которых нет в словаре, отобрать в массив, который потом дать списку проверки.
Но т.к. ТС молчит по этому поводу - может я и ошибаюсь...
Хотя какая разница, раз формула нужна
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 13.01.2012, 23:10   #10
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Напутал. Но увидев ответ от Сегодня 17:08, исправлять не стал.
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сравнение двух диапазонов и удаление совпадений Aniqa Microsoft Office Excel 5 20.07.2011 15:31
Как получить список именованных диапазонов листа через VBA myprog Microsoft Office Excel 1 14.05.2011 13:57
Макрос для двух диапазонов Severny Microsoft Office Excel 0 28.02.2011 13:31
Сравнение двух диапазонов и удаление совпадений ПОСТРОЧНО (доработка) pringls Microsoft Office Excel 2 26.01.2011 16:54
Какая разница в двух строках? bullvinkle HTML и CSS 2 07.12.2009 18:17