programing

VBA를 통해 어레이 공식 삽입

powerit 2023. 6. 27. 22:36
반응형

VBA를 통해 어레이 공식 삽입

VBA를 사용하고 있는데 배열 공식(수동으로 작성하는 경우 ++ShiftEnter를 누르는 공식)을 삽입해야 합니다.일반 공식처럼 삽입하면 작동하지 않습니다. {}을(를) 사용하여 삽입해도 작동하지 않습니다.VBA를 사용하여 공식을 작성하는 올바른 방법은 무엇입니까?

공식은 다음과 같습니다.

 =INDEX(subset!R1C1:R2472C10,MATCH(1,(RC1=subset!C1)*(RC2=subset!C2)*(RC5=subset!C5)*(RC6=subset!C6),0),10)  

당신은 찾고 있습니다.FormulaArray다음과 같이 셀에 대해 설정할 수 있는 속성:

Range("A1").FormulaArray = "=INDEX(subset!R1C1:R2472C10,MATCH(1,(RC1=subset!C1)(RC2=subset!C2)(RC5=subset!C5)*(RC6=subset!C6),0),10)"

다음 문서를 참조하십시오. http://msdn.microsoft.com/en-us/library/office/ff837104%28v=office.15%29.aspx

FormulaArray불행하게도, 예상대로 범위에 적용될 때 상대적인 셀 참조를 보존하지 않습니다.FormulaR1C1셀 참조 상대를 수직 범위로 유지하기 위해 사용할 수 있습니다.FillDown.

먼저 범위의 첫 번째 행에 배열 공식을 입력합니다.

Range("A1").FormulaArray = "=SUM((R1C5:R2C10 = ""INCLUDE"") * RC5:RC10)

그런 다음 원하는 범위를 채웁니다.

Range("A1:A10").FillDown

언급URL : https://stackoverflow.com/questions/27604084/insert-an-array-formula-via-vba

반응형