Как использовать постоянные значения в Excel UDF?

Я изо всех сил пытался придумать UDF в Excel. в основном то, что я ищу, это функция, которая будет принимать 2 входных параметра (константа), предоставляемых пользователем, тогда функция вернет одно из значений, предварительно сохраненных в таблице excel. Вот как это будет выглядеть:

месяц Пик выключен

  1. Январь 320 176
  2. Февраль 320 128
  3. Март 368 252
  4. Апрель 352 128
  5. Май 305 320

Функция будет выглядеть так: = Часы (февраль, пик), тогда она вернет часы пика в феврале и так далее.

Я ценю всю помощь. большое спасибо

EDIT: Код добавлен как комментарий

Public Function calculateHours(ByVal mo As Variant, ByVal period As Variant) As Integer Dim tablette As Range Set tablette = Worksheets("Hours").Range("U4:V15") Set valueRange = Worksheets("Hours").Range("U4:U15") period = "peak" For Each ref In valueRange mo = WorksheetFunction.VLookup(ref, tablette, 1, 0) Next ref calculateHours = WorksheetFunction.VLookup(mo, tablette, 2, False) End Function 

Когда я пытаюсь использовать эту функцию, например in = calculateHours (январь, пик), я получаю последнее значение из таблицы, независимо от того, какие параметры

Рассматривать:

 Public Function ReturnVale(period As String, MinMax As String) As Variant months = Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December") Off = Array(330, 347, 366, 393, 307, 353, 310, 347, 332, 307, 400, 333) Peak = Array(399, 428, 440, 446, 366, 431, 370, 413, 389, 364, 470, 421) For i = LBound(months) To UBound(months) If period = months(i) Then GoTo done End If Next i ReturnVale = "NOT FOUND" Exit Function done: If MinMax = "Peak" Then ReturnVale = Peak(i) Else ReturnVale = Off(i) End If End Function 

Естественно, вы изменили бы инструкции Array () в соответствии с вашими требованиями.

  • Автоматически показывать, какие переменные необходимы при использовании публичной функции vba в excel
  • Функция непрерывной суммы
  • Как я могу извлечь конкретные буквы и цифры из текстовой строки через VBA или excel Formula
  • excel передать содержимое ячейки в udf как аргумент диапазона
  • Функция поиска в Excel User Defined Function
  • Нужна помощь в создании пользовательской функции в Excel с помощью VBA
  • Функция, определяемая пользователем Excel, если ячейка подсвечена, тогда
  • Interesting Posts

    Обобщите часы, используя 2 критерия

    Проблема с удалением столбца и вставка данных в файл excel

    vba excel – Перенос элементов MultiSelect ListBox и элементов SingleSelect в одной команде

    i цикл проходит только через первую итерацию

    Удалить данные, связанные с # N / A

    Ошибка компиляции «Завершить без с»

    Excel: назначить макрос гиперссылке?

    VSTO- Событие для захвата щелчка на панели задач в книге Excel

    Как я могу избежать диалогового окна «Сохранить Excel» при выходе приложения автоматизации

    Для даты в столбце взять значение строки и вычесть значение в другом столбце?

    Проверьте, существует ли лист

    Если оператор Then работает неправильно

    Не удается запустить макрос через interop, если он находится в листе?

    Как использовать переменную для ссылки на закрытую книгу в excel

    Экспорт результатов запроса выбора Access 2013 в лист Excel 2013 без создания нового листка или разрыва ссылок

    Давайте будем гением компьютера.