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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 17.10.2008, 20:57   #1
St-Dyx
 
Регистрация: 17.10.2008
Сообщений: 5
По умолчанию Поиск в базе данных

Кто знает - помогите, коль не сложно советом. Есть таблица, состоящая из около 15 тыс. строк и 5-6 столбцов (не так важно). Из неё надо выдернуть только несколько тыс. Проблема в том, что каждому искомому значению соответствуют несколько значений в БД, и надо чтобы нашло и как-нибудь выдернуло все. Или хотя бы окрасило в красивые и приятные глазу цвета. Если не сложно - ответьте, а то искать значения при помощи CTRL+F - как-то бесстолково по-моему.... Заранее спасибо.
St-Dyx вне форума
Старый 17.10.2008, 21:20   #2
OgE®_M@G
Форумчанин
 
Аватар для OgE®_M@G
 
Регистрация: 28.06.2008
Сообщений: 124
По умолчанию

А сколько условий?С функцией ЕСЛИ пробовал?
OgE®_M@G вне форума
Старый 17.10.2008, 22:11   #3
St-Dyx
 
Регистрация: 17.10.2008
Сообщений: 5
По умолчанию

Функцией если только найти можно. А вот как скопировать? Ну т.е. чтобы при совпадении значений копировалась вся соответствующая строка.... А ниже - другая, и т.д. Просто найти - этого мала, это и поиском делается. Мне же нескольты тысяч строк копировать вручную прийдеться.
St-Dyx вне форума
Старый 17.10.2008, 22:46   #4
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

Цитата:
Сообщение от St-Dyx Посмотреть сообщение
А вот как скопировать?
Если я выложу макрос, похожий на такую задачу, разберешься самостоятельно?(я, объяснить не смогу)
valerij вне форума
Старый 18.10.2008, 01:30   #5
St-Dyx
 
Регистрация: 17.10.2008
Сообщений: 5
По умолчанию

Э-э.... Попробовать можно... А просто в формулах это не возможно??
St-Dyx вне форума
Старый 18.10.2008, 09:30   #6
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

Цитата:
Сообщение от St-Dyx Посмотреть сообщение
Э-э.... Попробовать можно... А просто в формулах это не возможно??
За формулы не знаю, а этот макрос написал SAS, прекрасно работает, все очень быстро.
По сути, есть два столбца, "А" и "С", "IU"(промежуточный, его мона опустить) при совпадении данных, они, окрашиваются в синий цвет.
Код:
Sub CompData() 'Окраска цветом совпавших № накладных
Dim x As Range, Ft As Range, Fst As String, iNd As Integer, i As Long, iVal As String, _
    oSt As Long
    Application.EnableEvents = False
    Application.ScreenUpdating = False
    iNd = ActiveSheet.Index
    Sheets("НАКЛ").Select
    Set Ft = ActiveCell
    ActiveSheet.Unprotect Password:="12345"
    Range(Cells(2, "A"), Cells(Rows.Count, "A")).Interior.ColorIndex = xlNone
    Columns("IU").ClearContents
    Columns("C").Copy
    Range("IU1").PasteSpecial Paste:=xlPasteValues, Operation:=xlAdd

    For i = 2 To Cells(Rows.Count, "A").End(xlUp).Row
        If Cells(i, "A") <> "" And Cells(i, "A") <> 0 Then
            Set x = Columns("IU").Find(what:=Cells(i, "A"), LookAt:=xlWhole)
            If Not x Is Nothing Then
                Fst = x.Address
                Do
                    Cells(i, "A").Interior.ColorIndex = 24
                    Cells(x.Row, "C").Interior.ColorIndex = 24
                    Set x = Columns("IU").FindNext(x)
                Loop While Not x Is Nothing And Fst <> x.Address
            End If
        End If
    Next
    Ft.Select
    Application.EnableEvents = True
Range("A1:A1378").Select
    Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
End Sub
valerij вне форума
Старый 18.10.2008, 14:04   #7
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Цитата:
Э-э.... Попробовать можно... А просто в формулах это не возможно??
можно и без формул. кажись это задача для фильтра. ставим фильт, задаем условие больше, меньше, равно, не равно, содержит, не содержит, начинается и т.д. в результате из всего видим то, что нужно. 2007 даже готов результаты работы фильтра вытащить на другой лист, по желанию...
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума
Старый 19.10.2008, 11:29   #8
St-Dyx
 
Регистрация: 17.10.2008
Сообщений: 5
По умолчанию

Да, под фильтр я и хочу подогнать... Скорее всего под цветовой. Ведь даже если "Содержит" - надо чтобы автоматом таблицу пробежал и сам добавлял.... А вот как это сделать? Изменять по-одному можно и при помощи "Заменить" - к примеру залить все соответствуюющие цветом, потом под фильтр. Но вот при вводе команды надо каждый раз вручную в поле "Заменить" вводить искомое значение. А их же до черта!
St-Dyx вне форума
Старый 19.10.2008, 12:13   #9
St-Dyx
 
Регистрация: 17.10.2008
Сообщений: 5
По умолчанию

Блин. Есть формула просматривающаю весь объем БД, а не какие-то конкретные ячейки?! Чтобы можно было её совместить с "Если" и было бы уже неплохо! А за макрос - спасибо чесс слово, спасибо большое за помощь, но увы и ах, я даже не смог найти куда его вставить
St-Dyx вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите пожалуйста сделать поиск по базе данных в форме! Access 2003 LilijaSt Microsoft Office Access 19 25.12.2010 10:13
апят пра поиск в базе данных bmb_66 БД в Delphi 0 14.03.2008 17:38
Поиск по базе данных ERASERROR БД в Delphi 4 14.03.2008 16:34
EXCEL поиск по базе и сопоставление данных lomax Microsoft Office Excel 4 10.02.2007 22:04