Страницы: 1
RSS
Найти значение в таблице, которое может находится в любой ячейке таблицы.
 
Доброго времени суток. Помогите найти значение в большой таблице. Значение может находится в любой ячейке этой таблицы. В зависимости, от местоположения этого значения заполняется другая таблица. Все детали приведены в прилагаемом примере.Спасибо.
 
casag, Если не секрет, а для чего такое надо?
 
С:
=МАКС(ЕСЛИ($B$3:$E$12=$B16;$G$3:$G$12)) (формула массива)
или
=СУММПРОИЗВ(($B$3:$E$12=$B16)*$G$3:$G$12)
D:
=ИНДЕКС($B$1:$E$1;МАКС(ЕСЛИ($B$3:$E$12=$B16;СТОЛБЕЦ(B:E)-1))) (формула массива)
E:
=ИНДЕКС($I$3:$L$12;ПОИСКПОЗ($C16;$G$3:$G$12;);ПОИСКПОЗ($D16;$B$1:$E$1;))
или
=ВПР($C16;$G$3:$L$12;ПОИСКПОЗ($D16;$B$1:$E$1;)+2;)
Вариантов много...
Формулы массива вводятся сочетанием трех клавиш
 
Огромное спасибо. Все работает. К сожалению, самому такие формулы сваять не получилось. Буду учится.Еще раз спасибо.
 
макросы проще ...  :)
Код
Option Explicit

Sub poisk()
Dim fnd As Range, cl%, rw&, r&: r = 16
Const adrRngTBL1$ = "B2:E12"

    Do Until Cells(r, "B").Value = ""
        Set fnd = Range(adrRngTBL1).Find(Cells(r, "B").Value, Range("B2"), xlValues, xlWhole, xlByRows)
        If Not fnd Is Nothing Then
            rw = fnd.Row: cl = fnd.Column: Set fnd = Nothing
            With Cells(r, "B")
                .Offset(0, 1).Value = Cells(rw, "G").Value
                .Offset(0, 2).Value = Cells(1, cl).Value
                .Offset(0, 3).Value = Cells(rw, cl + 7).Value
            End With
        End If
        r = r + 1
    Loop
End Sub
пс: что такое "габваг" ? ...  : / ?
 
Цитата
ocet p написал:
пс: что такое "габваг" ? ...  : / ?
Случайный набор букв, взятых для примера. Спасибо за макрос.
Страницы: 1
Наверх