A2부터 무한대까지 지정(NO VBA)
VBA가 없으면 A2에서 시작해서 끝나지 않는 범위를 참고하려고 합니다.예를 들어, 만약 내가 2열부터 5열까지 원한다면,
$A$2:$A$5
하지만 끝이 열려있길 원한다면요?
$A$2:??
가능한가요?
A1에 무엇이 포함되어 있고 어떤 공식에 참조를 넣느냐에 따라 A:A를 간단히 사용할 수 있습니다.예를 들어, 열 A의 모든 값을 합하고 싶지만 A1에 숫자가 아닌 열 제목이 포함되어 있다면 =SUM(A:A)을 작성할 수 있으며 A1의 제목은 무시됩니다.
A2: 많은 공식에서 일하는 A는 도움이 되기를 희망합니다.
OP의 질문에서 예제 위치를 사용하여 공식을 기반으로 하는 또 다른 옵션입니다.
=A2:INDEX(A:A,MAX(FILTER(ROW(A:A),IF(ISBLANK(A:A),0,1)=1)))
구성 요소는 다음과 같습니다.
=MAX(FILTER(ROW(A:A),IF(ISBLANK(A:A),0,1)=1))행이 입니다.A2:INDEX(A:A,<expression 1 above>)더큰 이 에 의해 한 범위를 다.다. 1.
이것은 나열된 다른 것들에 대한 대안이며, 잠재적으로 상당한 차이가 있기 때문에 관심이 있을 수 있습니다.
저는 다음과 같은 특징을 주목할 수 있습니다.
- 그것은 반드시 빠른 것은 아닙니다.
- 휘발성 공식은 아닌 것 같습니다.계산을 할 때마다 반드시 다시 계산되는 것은 아니기 때문에 이는 중요합니다.하지만 계산 빈도에 대해서는 잘 모르며 변동성 상태에 대해서도 충분히 이해하지 못합니다.불확실성은 INDEX 함수의 사용과 관련이 있습니다(구체적으로 범위의 : 뒤에 있음).그것을 설명하는 몇 가지 자료가 있습니다.INDIRECTED 및 OFFSET 기능은 확실히 휘발성입니다.휘발성 함수의 성능 영향을 설명하는 여러 리소스가 있으며, 그 중 일부는 다른 SO 답변에서 언급됩니다.예를 들어,
https://learn.microsoft.com/en-us/office/client-developer/excel/excel-recalculation https://www.sumproduct.com/thought/volatile-functions-talk-dirty-to-me http://www.decisionmodels.com/calcsecretsi.htm https://chandoo.org/wp/handle-volatile-functions-like-they-are-dynamite/
- 이를 통해 사용자는 특정 셀(예: 숫자가 아닌 헤더를 의미할 수 있는 A1)의 데이터에 대해 생각할 필요가 없습니다.
- : 앞에 지정된 셀과 비어 있지 않은 열의 마지막 셀 사이의 범위를 반환합니다.고려할 때 숫자가 아닌 값도 포함해야 한다고 생각합니다.
- Kresimir L.의 답변과 동일시하고자 하는 범위 측면에서 몇 가지 공통점을 공유합니다.
=OFFSET(A2,0,0,(COUNTBLANK(A:A)+COUNTA(A:A)-1),1).
참고 사항:본 답변은 Office 365의 일부로 작성 시 현재 이용 가능한 Excel 버전에 적용됩니다(계속해서 업데이트됨).그러나 이에 대한 답변은 제가 설치한 것이 명백하게 정확한지에 대한 제 자신의 확인에 근거한 것입니다.저는 모든 Office 365의 설치가 정확히 동일한 소프트웨어를 가지고 있는지 확신하지 못합니다. 그리고 저는 일부 기능이 Office 365의 설치마다 다를 수 있다는 것을 알고 있습니다.나는 이 대답이 모든 사람들에게 해당되는지 확신하지 못합니다.테스트 좀 해주세요.이러한 접근 방식으로 성공을 거두신 것에 대한 피드백을 주시면 감사하겠습니다.
A2부터 최대 행(2007년 이전 Excel의 경우 1048576 또는 65536)까지의 범위를 참조하려면 이 휘발성 공식을 사용하면 됩니다.=OFFSET(A2,0,0,(COUNTBLANK(A:A)+COUNTA(A:A)-1),1). 수식을 정의된 범위 이름으로 사용하거나 범위를 인수로 사용하는 다른 수식 내부에 사용합니다(eq SUM의 경우).
(공식이 A1에 있으므로 A:A에 액세스하면 원형 참조가 생성되는 경우) 또 다른 옵션은 다음과 같습니다.
OFFSET(A2, 0, 0, ROWS(A:A)-1)
그러면 ROWS를 사용하여 (실제 행에 액세스하지 않고!) 총 행 수를 세고 (두 번째 행부터 시작하므로) 1을 뺀 후 이 결과를 OFFSET으로 작성된 범위의 높이로 사용합니다.
이 내용은 아래의 코드와 같이 VBA에서 잘 설명되어 있습니다.
Range("A2", Range("A2").End(xlDown))
공식에서 이를 달성하려면 MS-Excel의 버전 번호에 따라 달라집니다.
이 참조 번호에 따르면 Excel 2007 이후의 시트에는 다음과 같이 사용할 수 있는 1048576 행이 있습니다.
$A$2:$A$1048576
공식의 이 범위는 Excels 버전에 따라 달라지므로 향후 버전에서는 다를 수 있습니다.
마지막으로 VBA를 사용하는 것을 추천합니다.
언급URL : https://stackoverflow.com/questions/46601997/specifying-range-from-a2-till-infinity-no-vba
'programing' 카테고리의 다른 글
| 경량 C 코드 샌드박스를 만드는 방법은? (0) | 2023.09.26 |
|---|---|
| 우커머스 서브스크립션에서 다음 결제일을 설정하는 방법은? (0) | 2023.09.26 |
| long-poll jQuery.ajax()는 전화가 잠든 후 다시 전화하지 못합니까? (0) | 2023.09.26 |
| 브라우저에서 실행되는 자바스크립트 샌드박스가 가능합니까? (0) | 2023.09.26 |
| AngularJS에서 $timeout을 사용하여 매개 변수로 함수를 실행하는 방법은? (0) | 2023.09.26 |