如何在VBA公式上按CTRL SHIFT ENTER

时间:2019-09-13 06:21:35

标签: excel vba

应该是一个数组公式,所以这就是为什么我尝试在其中插入{}的原因。但是我在运行时遇到错误。

这是我的代码:

Name,F1,F2,F3,F4,F5,F6,F7,F8,F9,F10
Calculation,CHN,GUJ,HR,KOL,MAH,MUM,PJB,ROB,TN,UPE,UPW
K1 data,8467,37622,18418,14138,24943,27914,370,24621,27310,41565,687
K2 Data,199379.472222,NaN,241390.289167,264378.881667,292310.146944,774915.508056,3560.825278,212203.013611,213419.833611,403226.574444,2023.039167
K3 Data,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN
K4 Data,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN

1 个答案:

答案 0 :(得分:1)

您需要像这样将.Value更改为.FormulaArray

lastrow = ThisWorkbook.Sheets("Sheet2").Range("A" & Rows.Count).End(xlUp).Row
If lastrow > 1 Then


Sheets("Sheet2").Range("C3:C" & lastrow).FormulaArray = _
     "=CONCATENATE(MIN(IF(B3:B251=B3,A3:A251)),""-"",MAX(IF(B3:B251=B3,A3:A251)))"

End If

然后您可以使用{}

对于通常的公式,对于具有相对符号的公式,可以使用.Formula.FormulaR1C1