Гость
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Excel / 13 сообщений из 13, страница 1 из 1
27.11.2015, 18:53
    #39115188
Lyuda-Dyu
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel
Доброго времени суток.

Помогите, пожалуйста, решить задачку.

Есть
A123-1
A123-2
A487-1
A487-2
A687-1
A697-4

И
A487
A123
A687
A697
A568

Необходимо сопоставить и получить
A123-1 A123
A487-1 A487
A687-1 A687
A697-4 A697

Без соответствия оставить
A123-2
A487-2

и
A568

Т.е. первым должно сопоставляться по -1, если не нашло единицу брать должно -2 и т.п. до 9.

Заранее спасибо.
...
Рейтинг: 0 / 0
27.11.2015, 19:12
    #39115194
Lyuda-Dyu
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel
П.С. Извините за тему, забыла дописать полную
...
Рейтинг: 0 / 0
27.11.2015, 22:15
    #39115265
Казанский
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel
Lyuda-Dyu,
где есть? Куда получить? Файл(ы) приложите.
...
Рейтинг: 0 / 0
01.12.2015, 16:21
    #39117525
Lyudok
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel
Казанский, файлик прилагаю.
Заранее спасибо.
...
Рейтинг: 0 / 0
01.12.2015, 18:57
    #39117720
Yagrus2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel
Lyudok,

Вам нужно изучить функцию ВПР.
...
Рейтинг: 0 / 0
01.12.2015, 18:59
    #39117722
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel
Lyuda-DyuЕсть
A123-1
A123-2
A487-1
A487-2
A687-1
A697-4Список сортированный, или это случайно?
...
Рейтинг: 0 / 0
01.12.2015, 19:03
    #39117724
Lyudok
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel
Yagrus2,

спасибо, с ней хорошо знакома) но тут вопрос в очередности вывода данных, т.е. сначала должно отобрать единицу, потом, если нет единицы - двойку и т.п.
...
Рейтинг: 0 / 0
01.12.2015, 19:03
    #39117725
Lyudok
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel
Akina, случайно, может быть вразброс
...
Рейтинг: 0 / 0
01.12.2015, 20:24
    #39117793
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel
Это всё в Excel, как я понимаю?
Допустимы ли: дополнительные колонки? пользовательские функции?
...
Рейтинг: 0 / 0
01.12.2015, 21:20
    #39117837
Lyudok
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel
Akina, нужно использовать только Excel.
Все допускается, но желательно без макросов...
...
Рейтинг: 0 / 0
03.12.2015, 01:04
    #39118880
Казанский
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel
Lyudok, без макроса тяжело :) Пробуйте, результат на новом листе.
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
Sub Lyudok()
Dim di As Object, v(), x, k, iy&, iz&
  Range("A:A").Sort Range("A1"), xlAscending, Header:=xlNo
  Set di = CreateObject("scripting.dictionary")
  di.comparemode = vbTextCompare
  For Each x In Range("C1", Cells(Rows.Count, "C").End(xlUp)).Value
    di(x) = di(x) + 1
  Next
  v = Range("A1", Cells(Rows.Count, "A").End(xlUp)).Value
  ReDim y(1 To UBound(v), 1 To 2), Z(1 To UBound(v), 1 To 1)
  For Each x In v
    k = Split(x, "-")(0)
    If di.exists(k) Then
      iy = iy + 1
      y(iy, 1) = x
      y(iy, 2) = k
      di(k) = di(k) - 1
      If di(k) <= 0 Then di.Remove k
    Else
      iz = iz + 1
      Z(iz, 1) = x
    End If
  Next
  Sheets.Add
  [A1:A3] = [{"RESULT";"";"ok"}]
  If iy Then [A4].Resize(iy, 2).Value = y
  Cells(iy + 6, 1) = "not ok"
  If iz Then Cells(iy + 7, 1).Resize(iz).Value = Z
  If di.Count Then Cells(iy + 7, 3).Resize(di.Count).Value = Application.Transpose(di.keys)
End Sub
...
Рейтинг: 0 / 0
03.12.2015, 10:57
    #39119122
W_I_N_T_E_R
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel
LyudokYagrus2,
спасибо, с ней [ВПР] хорошо знакома)
Тогда знакомьтесь еще раз (:
ВПР + 10 скрытых столбцов
...
Рейтинг: 0 / 0
04.12.2015, 15:51
    #39120743
Lyudok
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel
Спасибо большое за помощь!!!!
Пошла разбирать макрос, и изучать другие функции (не ВПР()) :)

Еще раз спасибо, очень помогли!
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Excel / 13 сообщений из 13, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]