Мне нужна помощь. Использование Excel 2007. Я даже не уверен, что это можно сделать. Мне нужно поддерживать эффективность и скорость, иначе приложение не будет использоваться.VBA присваивает формулу переменной, затем используйте переменную для оценки Формулы
У меня есть инструкция «IF» для проверки критериев. В зависимости от результатов вы хотите присвоить одну из нескольких возможных формул переменной для последующего использования. Затем мне нужно иметь переменную для оценки формулы, чтобы результат мог быть сохранен во второй переменной для построения массива.
Пример кода:
If (varEmployeeName = "(All)" Or varEmployeeName = "(Multiple Items)") Then
**varArrayFormula = "Application.WorksheetFunction.SumIfs(wsSumRange, wsLookupRange, wsLookupValue)"**
Else
**varArrayFormula = "Application.WorksheetFunction.SumIfs(wsSumRange, wsLookupRange, wsLookupValue, wsLookupRange2, varEmployeeName)"**
Затем Позже этот код будет выполняться:
ReDim varKPIArray(0 To varLastRow) ' creates the array size
For varCol = 10 To 13
For varRow = 8 To varLastRow
varDailyKPIHeading = ws.Cells(7, varCol).Value
Select Case varDailyKPIHeading
Case "PRODUCTIVITY"
Set wsSumRange = ThisWorkbook.Worksheets("DailyProductivity").Range("$G:$G")
Set wsLookupRange = ThisWorkbook.Worksheets("DailyProductivity").Range("$F:$F")
wsLookupValue = ws.Range("B" & varRow).Value
**varSumifValue = Application.Evaluate(varArrayFormula)**
varKPIArray(varRow - 8) = varSumifValue
Case "HOURS"
будет цикл через несколько столбцов и строк, следовательно, почему необходимы программы переменные. У меня есть 2 варианта на данный момент: 1) - это построить массив, а затем я могу вставить результаты массива в соответствующие ячейки со вторым циклом. или 2) Как я цикл через каждую ячейку я занесение результатов формулы в ячейку,
Спасибо всем вам за помощью, предложений и идеи
Я испробовал использование "", но это применит формулу к переменной как строку, которую я попытался использовать [], но это затем хочет выполнить формулу и применить результаты к переменной – rchrysler