VBA를 처음 사용하고 문자열이있는 열을 통과하는 프로그램을 디자인하려고합니다. 모든 고유 한 String 이름은 해당 String 값을 이름으로 사용하는 새 워크 시트 객체를 만든 다음 해당 행의 값을 복사하여 새 시트에 붙여 넣습니다. 모든 동일한 문자열은 또한 그 행의 값을 새 시트로 복사해야합니다.런타임 오류 '13'유형 불일치, int로 long을 대체하면 런타임 오류 '6'오버플로
longs를 입력하는 동안 셀 값을 계산하려고하는 코드에서 런타임 오류 '13'유형 불일치가 발생합니다. 예 : 셀 (long x, long y). 값. 문제를 피하기 위해 int로 값을 변경해 보았습니다. 그렇지만 내 문서가 단지 2272 행이고 코드가 한 번 반복되기 전에 오류가 발생하더라도 런타임 오류 '6'오버플로 오류가 발생합니다. 루프. 코드는 다음과 같습니다.
Sub FilterByClass()
Dim i As Long
Dim j As Long
Dim k As Long
Dim sheetName As String
ActiveSheet.Name = "AllClasses"
sheetName = Worksheets("AllClasses").Cells(2, 1).Value
Worksheets.Add
ActiveSheet.Name = sheetName
Worksheets("AllClasses").Activate
ActiveSheet.Rows("1:2").Copy
Worksheets(sheetName).Paste
j = 3
k = 0
For i = 3 To Rows.Count
If Worksheets("AllClasses").Cells(i, 1).Value <> Worksheets("AllClasses").Cells(i - 1, 1).Value Then
Worksheets("AllClasses").Rows("1:1, j:(i-1)").Copy ***Where the error takes place
Worksheets(Worksheets("AllClasses").Cells((i - 1), 1).Value).Paste
j = i
sheetName = Worksheets("AllClasses").Cells(i, 1).Value
For Each sheet In ActiveWorkbook
If sheetName = sheet.Name Then k = 1
Next sheet
If k = 1 Then k = 0
Else
Worksheets.Add
ActiveSheet.Name = sheetName
Worksheets("AllClasses").Activate
End If
Next i
End Sub
도움이 되셨습니까? 그리고 코드의 나머지 부분에서 분명히 의도 한대로 작동하지 않는 것으로 보이는 것이 있으면 그것을 지적하십시오. 감사합니다
여전히 같은 오류가 무엇을 당신이 말한 것은 인 경우에 ... – djar
또한 왜 것 내 longs를 int로 바꿀 때 같은 형식 불일치 오류 대신 오버플로 오류가 발생합니까? – djar
어떤 오류가 발생 했습니까? 과다? –