0
셀 참조를 워크 시트에 (Ctrl + Shift + Enter를 사용하여 배열을 통해) 워크 시트에 할당하는 함수가 필요합니다. 문제는 배열의 모든 셀 부분에 #VALUE ERROR를주는 참조 된 셀이 비어 있지 않으면 제대로 작동한다는 것입니다. 이것은 내가 그래서 기본적으로VBA 셀 참조 함수 지정
Function GeneratePackingList(PackageTable As Range)
Dim bRow As Byte, bCol as Byte
Dim asResult()
ReDim asResult(1 To 25, 1 To 11)
With PackageTable
For bRow = 1 To .Rows.Count
For bCol = 1 To 11
Select Case bCol
'Rearranging the columns order
Case 1 To 6: Set asResult(bRow, bCol) = .Cells(bRow, bCol + 1)
Case 7: Set asResult(bRow, bCol) = .Cells(bRow, 1)
Case 8 To 11: Set asResult(bRow, bCol) = .Cells(bRow, bCol)
End Select
Next bCol
Next bRow
End With
GeneratePackingList = asResult
End Function
를 사용 PackageTable에서 그 세포 중 하나가 비어있는 경우, 내가 # VALUE 오류를 얻을 모두가 손실되는 기능입니다. 변수 선언을 변경해야합니까 (variant, range 또는 else?) 함수를 통해 셀 참조를 할당하는 다른보다 효율적인 방법이 있습니까?
삭제, 그리고 그것은 나에게 오류를 제공 길이> 255으로 세포를 표시 할 수 없습니다. Variant를 통해 붙여 넣은 값이 아니라 원래 셀을 참조해야합니다. – AutoClave
배열에 255보다 긴 문자열 값을 반환 할 수 없습니다 ('Set '포함 또는 제외). –
문자열 배열은 255 개 이상의 문자를 저장할 수있는 것 같습니다. – AutoClave