기사 30강 듣고 소스코딩을 ↓같이 했는데, 계속 62번 오류가 뜨면서 디버그하면 line input #1, 버퍼 체크가 되네요 ㅡ.,ㅡ 왜 이럴까요? Option Explicit
Sub main() ''필수 Dim 버퍼, k, 인수1, 인수2 As Variant ''핵심 Dim 예약실구분코드, 투숙기간, 누적점수, num, temp, p, 할인금액, 합계(1000), 숙박요금(1000), 예약번호(1000) As Variant ''인수처리 인수1 = Val(Left(Command, InStr(Command, " "))) 인수2 = Val(Mid(Command, InStr(Command, " "))) Open "c:\c_it\data\abc0002.txt" For Input As #1 For k = 1 To 인수2 Line Input #1, 버퍼 If k >= 인수1 Then ''변수저장 예약실구분코드 = Trim(Mid(버퍼, 38, 2)) 투숙기간 = Val(Mid(버퍼, 15, 2)) 누적점수 = Val(Mid(버퍼, 40, 5)) 할인금액 = Val(Mid(버퍼, 30, 4)) ''합계구하기 If 예약실구분코드 = "WA" Or 투숙기간 <= 13 Then num = num + 1 합계(num) = 누적점수 + 할인금액 숙박요금(num) = Val(Mid(버퍼, 19, 6)) 예약번호(num) = Val(Mid(버퍼, 1, 6)) End If End If Next k ''정렬하기(내림차순 or 동일값발생시 예약번호) For k = 1 To num For p = k To num If 합계(k) < 합계(p) Or 합계(k) = 합계(p) And 예약번호(k) > 예약번호(p) Then temp = 합계(k) 합계(k) = 합계(p) 합계(p) = temp temp = 숙박요금(k) 숙박요금(k) = 숙박요금(p) 숙박요금(p) = temp temp = 예약번호(k) 예약번호(k) = 예약번호(p) 예약번호(p) = temp End If Next p Next k Close #1 Open "c:\c_it\data\ans1.txt" For Output As #2 Print #2, 인수1, 인수2, 숙박요금(4) Close #2 End Sub |