Страницы: 1
RSS
Вычислить формулу в макросе
 
Мяв.
Сочинил формулу, которую нужно вставлять на лист.
=ИНДЕКС(Limit;ПОИСКПОЗ($B$36;Limit[ВИД];0);ПОИСКПОЗ($B$35;Limit[#Заголовки];0))
Это-же значение нужно отображать на форме. Попытался проделать это методом Evaluate, но где-то затык.
Направьте на путь истинный.
 
А если считывать готовое значение из ячейки вставлять на форму?
Согласие есть продукт при полном непротивлении сторон
 
Разобрался. Так нужно было
Код
a = Application.Evaluate("INDEX(Limit,MATCH(" & Cells(36, 2).Address & ",Limit[ВИД],0),MATCH(" & Cells(35, 2).Address & ",Limit[#Headers],0))")


А в ячейке пока еще пусто. Формула будет после ввода, а смотреть хотят до.
 
Код
?evaluate("INDEX(Limit,MATCH($B$36,Limit[ВИД],0),MATCH($B$35,Limit[#Headers],0))")
Изменено: JayBhagavan - 12.12.2016 18:15:40

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
Еще вариант
Код
Sub Limit()
Dim tbl As ListObject
    Set tbl = ListObjects("Limit")
    With Application.WorksheetFunction
        Lim = .Index(tbl.Range, .Match([B36], tbl.ListColumns(1).Range.Value, 0), .Match([B35], tbl.HeaderRowRange.Value, 0))
        MsgBox Lim
    End With
End Sub
Согласие есть продукт при полном непротивлении сторон
 
Спасибо за варианты
Страницы: 1
Наверх