동일한 차원을 가진 두 개의 동적 배열을 추가하고 그 값의 오름차순으로 정렬하려면 어떻게합니까? 예를 들어VBA 배열을 세 번째 다른 배열에 추가
,
Dim a as Variant
a = sheets(1).range("B" & firstRow & ":B" & lastRow)
Dim b as Variant
b = sheets(1).range("C" & firstRow & ":C" & lastRow)
FIRSTROW 및 lastRow
적절히 정의된다.제 질문은 배열 a를 어떻게 배열에 추가 할 수 있습니까? 우리는 a = (8,3,5)와 b = (1,7,2)로 가정합니다. 배열 c는 (8,3,5,1,7,2)이어야합니다. 나는 성공하지 못하고 다음을 시도했다. 아무도 왜 작동하지 않는지 설명 할 수 있습니까?
Dim c as variant
c = Join(b, Join(a, ","))
배열 C에 도입 된 값을 정렬하려면 함수를 만들어야하거나 한 번만 할 수 있습니까?
Dim aArray() As variant
aArray = aRange
Dim bArray() As Variant
bArray = bRange
Dim cArray() As Variant
cArray = aArray
Dim i As Integer
For i = 1 To UBound(coutArray)
ReDim Preserve cArray(UBound(aArray)+1) As Variant
cArray(i + UBound(aArray),1) = bArray(i,1)
Next i
내가 aArray이의 말에 cArray()를 추가하려고 :
는
나는 다음과 같은 코드로 변경하면
마지막 버전 감사 두 개의 배열이 cArray()에 도입 될 것입니다. 왜 이것이 효과가 없습니까? 나는 이해하고 싶다.
또한 함수 (How do I Merge two Arrays in VBA?)를 만들려고했는데 어떻게하면 프로 시저를 호출 할 수 있습니까? 그것은 효과가 없었습니다.
감사합니다.
사실 A와 B는 엑셀 범위의 값을 가지고있다. 배열의 값을 찾기 전에 범위를 배열로 변환해야한다고 생각했습니다. – vbalearner
나는 정말로 네가하고 싶은 것을 얻지 못한다. 조인은 sinhgle 치수 배열의 모든 요소에 문자열에 주석을 추가합니다. 예 : a = (8,6,9) 조인 (a, "/") "8/6/9"문자열을 반환 – Shmukko
두 개의 다른 열에서 두 개의 배열을 만들려고합니다. 그런 다음이 두 배열을 세 번째 배열로 집계해야합니다. 예를 들어, a = Array (8,3,5) 및 b = Array (1,72)를 고려하면 값이 오름차순으로 정렬되는 세 번째 배열 c = Array (1,2,3,5,7,8) . – vbalearner