2013-07-02 3 views
0

입력란의 취소 버튼을 클릭하면 '문자열 변환'에서 '정수'유형으로 표시됩니다. ' vb.net 2010 년 내 코드에서 오류가문자열 ""에서 유형 '정수'로의 변환이 유효하지 않습니다. - VB.NET

Dim lineNo As Integer 

lineNo = InputBox("What is the last record number?" & 
vbNewLine & vbNewLine & "Enter line number 0 - 30.", "Enter Line Number", 0) 

여기에서 문제점은 무엇입니까?

업데이트 : Dim lineNo As Integer. 나는 여기서 선언문을 진술하는 것을 잊었다. 문자열로

+0

[에서 InputBox (http://msdn.microsoft.com/en-us/library/6z0ak68w (V = vs.80)에서 .aspx 할 필요가 있도록)는 문자열을 반환합니다. –

답변

1

당신이

lineNo = val(InputBox("What is the last record number?" & vbNewLine & vbNewLine & "Enter line number 0 - 30.", "Enter Line Number", 0)) 
3

선언은 lineNo :

Dim lineNo As String = InputBox("What is the last record number?" & 
    vbNewLine & vbNewLine & "Enter line number 0 - 30.", "Enter Line Number", 0) 

lineNo은 코드에서 다른 곳 정수로 선언해야합니다. 비주얼 스튜디오에 내 코드 을 붙이고 불만 없습니다.

정수로 lineNo가 필요한 경우 다른 문자열 변수를 사용하십시오.

+0

죄송합니다. 나는 그 일을했으나 여기서 그 일을 놓쳤다. –

+0

코드가 업데이트 된 것을 보았습니다. lineNo는 문자열이어야합니다. InputBox는 문자열을 반환합니다. 이것을 확인하십시오 : http://msdn.microsoft.com/en-us/library/6z0ak68w(v=vs.80).aspx –

+0

Carlos 감사합니다. –

3

lineNo가 정수로 선언되어 있습니까? InputBox에서 "취소"를 클릭하면 빈 문자열이 반환되고 emptry 문자열은 숫자 값으로 변환 될 수 없습니다. 그것이 당신의 잘못이 말하는 것입니다. 그래서 항상 Integer.TryParse을 사용하여 별도의 단계에서 문자열을 반환하는 InputBox의 결과를 가져와야합니다. 당신의에서 InputBox 반환 문자열 이후

+0

감사합니다. Alexander. –

관련 문제