-2
그래서 기본적으로 범위를 선택하는 매크로를 작성하려면 배열의 값과 셀의 값을 비교하고 범위의 끝 부분에 누락 된 값을 추가하십시오 .엑셀 채우기 범위 배열의 누락 된 값
그래서 기본적으로 범위를 선택하는 매크로를 작성하려면 배열의 값과 셀의 값을 비교하고 범위의 끝 부분에 누락 된 값을 추가하십시오 .엑셀 채우기 범위 배열의 누락 된 값
문자열을 사용하여이 예를보십시오 : 대신 범위 ("A1")로, 셀 (행 번호, 열 번호)를 사용하여 세포를 통해 어레이 및 루프를 통해 루프를 수행 할 수 있습니다, 당신이 시작할 수 있도록
을 행별로 각 값을 비교합니다. 그런 다음 새 배열과 일치하지 않는 값을 추가하면 나중에 다른 루프의 시트로 다시 전달됩니다.
값이 시트 ("Sheet1")부터 시작한다고 가정하십시오. 범위 ("A1"). 샘, 짐, 스탠리, 제프, 마이크, 제프, 토비 : 다음 예제 이름.
Dim lastRow As Integer
Dim i As Integer
Dim r As Integer
Dim n As Integer
Dim unMatchedArray() As String
Private Sub ArrayChecker()
Dim myArray(7) As String
Dim match As Boolean
n = 0
myArray(0) = "Jeff"
myArray(1) = "Stanly"
myArray(2) = "Mike"
myArray(3) = "Sam"
myArray(4) = "Toby"
myArray(5) = "Reginald"
myArray(6) = "Wolfgang"
myArray(7) = "Manual"
Call GetLastRow
For i = 0 To UBound(myArray)
r = 1
match = False
For r = 1 To lastRow
If myArray(i) = Sheets("Sheet1").Cells(r, 1) Then
match = True
Exit For
End If
Next r
If match = False Then
ReDim Preserve unMatchedArray(n)
unMatchedArray(n) = myArray(i)
n = n + 1
End If
Next i
n = n - 1
If n > 0 Then
Call AddToSheet
End If
End Sub
Private Sub GetLastRow()
' checking Range("A1:A65536")
lastRow = Sheets("Sheet1").Cells(65536, 1).End(xlUp).Row
End Sub
Private Sub AddToSheet()
Call GetLastRow
r = lastRow + 1
i = 0
For i = 0 To n
Sheets("Sheet1").Cells(r, 1) = unMatchedArray(i)
r = r + 1
Next i
End Sub
이 질문은 연구 노력을 나타내지 않습니다. 누군가에게 당신을 위해 무언가를 코딩하도록 요청하는 것은 받아 들여지지 않는 질문입니다. 여기에 있습니다. 질문을 편집하여 지금까지 조사한 내용과 에 작성하려고 시도한 코드가이 작업을 수행하면 더 나은 질문이되고 훨씬 더 좋은 답변을 얻을 수 있습니다. –
의견을 주셔서 감사합니다. 내가 취할 접근법이나 심지어 VBA에서 일종의 배열을 사용하여이 작업을 수행 할 수 있는지 알지 못하기 때문에 아직 코드가 없습니다. 대부분의 연구는 비어 있습니다. 나는 그 문제의 일부로 여기에 질문을 게시했습니다. 나는 어디서부터 시작해야하는지에 대한 코드를 말할 필요가 없다. 미안해. 문구가 혼란 스러웠을지도 몰라. –