Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Поиск и отображение нескольких значений по условию - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Поиск и отображение нескольких значений по условию
Irysha Дата: Вторник, 09.10.2012, 16:26 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 68
Репутация: 17 ±
Замечаний: 0% ±

2007,2013
Доброго времени суток!
Обычно выборку нескольких значений из диапазона я не ленилась прописывать вручную, т.к. данных было не так и много, а изменения вносились редко. Но увы, все заканчивается sad .

Суть проблемы такова: в столбце прописаны инвентарные номера (их присваивают рандомно другие службы, я лишь могу для удобства пользования добавить к ним букву, которая обозначает принадлежность к той или иной группе пользователей) из них необходимо формировать перечни для каждой группы пользователей. Если просто в дополнительном столбце добавить принадлежность и отфильтровать, то перечни получаются очень длинные. А выбирать вручную в строчку, когда количество инв.№ переваливает за 10 шт. становится сложно и возникает возможность ошибки.

Может быть есть способ автоматизировать этот процесс?
К сообщению приложен файл: 6420975.xls (82.5 Kb)
 
Ответить
СообщениеДоброго времени суток!
Обычно выборку нескольких значений из диапазона я не ленилась прописывать вручную, т.к. данных было не так и много, а изменения вносились редко. Но увы, все заканчивается sad .

Суть проблемы такова: в столбце прописаны инвентарные номера (их присваивают рандомно другие службы, я лишь могу для удобства пользования добавить к ним букву, которая обозначает принадлежность к той или иной группе пользователей) из них необходимо формировать перечни для каждой группы пользователей. Если просто в дополнительном столбце добавить принадлежность и отфильтровать, то перечни получаются очень длинные. А выбирать вручную в строчку, когда количество инв.№ переваливает за 10 шт. становится сложно и возникает возможность ошибки.

Может быть есть способ автоматизировать этот процесс?

Автор - Irysha
Дата добавления - 09.10.2012 в 16:26
KuklP Дата: Вторник, 09.10.2012, 16:51 | Сообщение № 2
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Непонятно, что надо. Автофильтр - условие - заканчивается на(м). Все и выведется без доп. столбца.


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728
 
Ответить
СообщениеНепонятно, что надо. Автофильтр - условие - заканчивается на(м). Все и выведется без доп. столбца.

Автор - KuklP
Дата добавления - 09.10.2012 в 16:51
Hugo Дата: Вторник, 09.10.2012, 17:25 | Сообщение № 3
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3690
Репутация: 790 ±
Замечаний: 0% ±

365
UDF
[vba]
Code

=VLOOKUPCOUPLE2(C12:C20,1,"*м",1,", ")
[/vba]
[vba]
Code


Function VLOOKUPCOUPLE2(Table As Variant, SearchColumnNum As Integer, SearchValue As Variant, _
                          RezultColumnNum As Integer, Separator_ As String)
'Table - таблица, где ищем
'SearchColumnNum - столбец, где ищем
'SearchValue - данные, которые ищем
'RezultColumnNum - колонка, откуда берём результат
'Separator_ - разделитель, желательно вводить с пробелом в конце

      Dim i As Long
        
       If TypeName(Table) = "Range" Then Table = Table.Value
          For i = 1 To UBound(Table)
              If Table(i, SearchColumnNum) Like SearchValue Then
                  If VLOOKUPCOUPLE2 <> "" Then
                      VLOOKUPCOUPLE2 = VLOOKUPCOUPLE2 & Separator_ & Table(i, RezultColumnNum)
                  Else
                      VLOOKUPCOUPLE2 = Table(i, RezultColumnNum)
                  End If
              End If
          Next i
      If VLOOKUPCOUPLE2 = 0 Then VLOOKUPCOUPLE2 = ""
End Function
[/vba]


webmoney: E265281470651 Z422237915069
USDT TRC20: TN8XeEF17o5KPBD9pNwYzNyruycuAc2mVD
 
Ответить
СообщениеUDF
[vba]
Code

=VLOOKUPCOUPLE2(C12:C20,1,"*м",1,", ")
[/vba]
[vba]
Code


Function VLOOKUPCOUPLE2(Table As Variant, SearchColumnNum As Integer, SearchValue As Variant, _
                          RezultColumnNum As Integer, Separator_ As String)
'Table - таблица, где ищем
'SearchColumnNum - столбец, где ищем
'SearchValue - данные, которые ищем
'RezultColumnNum - колонка, откуда берём результат
'Separator_ - разделитель, желательно вводить с пробелом в конце

      Dim i As Long
        
       If TypeName(Table) = "Range" Then Table = Table.Value
          For i = 1 To UBound(Table)
              If Table(i, SearchColumnNum) Like SearchValue Then
                  If VLOOKUPCOUPLE2 <> "" Then
                      VLOOKUPCOUPLE2 = VLOOKUPCOUPLE2 & Separator_ & Table(i, RezultColumnNum)
                  Else
                      VLOOKUPCOUPLE2 = Table(i, RezultColumnNum)
                  End If
              End If
          Next i
      If VLOOKUPCOUPLE2 = 0 Then VLOOKUPCOUPLE2 = ""
End Function
[/vba]

Автор - Hugo
Дата добавления - 09.10.2012 в 17:25
Irysha Дата: Среда, 10.10.2012, 10:15 | Сообщение № 4
Группа: Пользователи
Ранг: Участник
Сообщений: 68
Репутация: 17 ±
Замечаний: 0% ±

2007,2013
Класс, все получилось в обоих вариантах
 
Ответить
СообщениеКласс, все получилось в обоих вариантах

Автор - Irysha
Дата добавления - 10.10.2012 в 10:15
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!