교재에서는 기준행위치, 기준범위행수, 입력행 이런 변수를 지정한 후에 이를 이용하여 코드를 짜 놓았는데,
Do
If Cells(i, 2) = "" Then
Cells(i, 2) = txt판매일자.Text
Cells(i, 3) = txt제품명.Text
Cells(i, 4) = txt수량.Text
Cells(i, 5) = txt단가.Text
Cells(i, 7) = cmb결재형태.Text
txt제품명.Text = ""
txt수량.Text = ""
txt단가.Text = ""
cmb결재형태.Text = ""
Exit Do
Else
i = i + 1
End If
Loop
이런 식으로 반복문으로 짜서 넣어도 감점요인이 되나요? 아니면 아무 상관이 없나요?
안녕하세요.
i를 어떻게 설정하셨는지 정확하지 않지만, 문제에서 제시한 기능이 정확히 실행된다면 정답으로 인정됩니다.
정확한 확인을 원하시면 작업하신 엑셀 파일을 첨부하셔서 재질문해 주세요.
좋은 하루 보내세요.
-
관리자2019-02-24 20:46:25
안녕하세요.
i를 어떻게 설정하셨는지 정확하지 않지만, 문제에서 제시한 기능이 정확히 실행된다면 정답으로 인정됩니다.
정확한 확인을 원하시면 작업하신 엑셀 파일을 첨부하셔서 재질문해 주세요.
좋은 하루 보내세요.
-
관리자2019-02-28 10:48:04
안녕하세요.
적어주신대로 입력하셔도 정상작동되므로 정답으로 인정됩니다.
금액은 Format으로 입력되었기 때문에 문자로 반환된 것입니다.
감점사항은 아닙니다.
Cells(i, 6) = Format(Cells(i, 4) * Cells(i, 5), "currency") * 1
*1을 적어주시면 숫자로 변환됩니다.
좋은 하루 보내세요.
-
*2019-02-25 13:14:45
Private Sub cmd등록_Click()
i = 3
If txt제품명.Text = "" Then
MsgBox ("제품명을 입력하시오")
ElseIf txt수량.Text = "" Then
MsgBox ("수량을 입력하시오")
ElseIf txt단가.Text = "" Then
MsgBox ("단가를 입력하시오")
ElseIf cmb결재형태.Text = "" Then
MsgBox ("결재형태를 입력하시오")
Else
Do
If Cells(i, 2) = "" Then
Cells(i, 2) = txt판매일자.Text
Cells(i, 3) = txt제품명.Text
Cells(i, 4) = Val(txt수량.Text)
Cells(i, 5) = Val(txt단가.Text)
Cells(i, 6) = Format(Cells(i, 4) * Cells(i, 5), "currency")
Cells(i, 7) = cmb결재형태.Text
txt제품명.Text = ""
txt수량.Text = ""
txt단가.Text = ""
cmb결재형태.Text = ""
Exit Do
Else
i = i + 1
End If
Loop
End If
End Sub
전체코드는 이렇습니다.
또 한가지 질문은 이렇게 코드를 짠 후에 등록버튼으로 값을 넣으면 수량과 단가는 숫자형식으로 잘 들어가는데 금액은 '텍스트형식의 숫자' 라고 경고가 뜨는데
혹시 이것도 감점사항인가요?
감점사항인지와 관계없이, vba 코드에서 해결할 수 있는 방법이 있을까요?
책에 있는 코드대로 짜서 넣어도 금액 쪽에서 '텍스트형식의 숫자' 경고는 동일하게 표시됩니다.