문제에서 단가와 수량은 숫자데이터 형식으로 입력하라고만 했지 날짜데이터의 대한 언급은 없었습니다.
Private Sub cmd등록_Click()
입력행 = [b3].Row + [b3].CurrentRegion.Rows.Count
If txt제품명 = "" Then
MsgBox "제품명을 입력하시오."
ElseIf txt수량 = "" Then
MsgBox "수량을 입력하시오."
ElseIf txt단가 = "" Then
MsgBox "단가를 입력하시오."
ElseIf cmb결재형태 = "" Then
MsgBox "결재형태를 입력하시오."
Else
Cells(입력행, 2) = CDate(txt판매일자)
Cells(입력행, 3) = txt제품명
Cells(입력행, 4) = Val(txt수량)
Cells(입력행, 5) = Val(txt단가)
Cells(입력행, 6) = Format(Val(txt수량) * Val(txt단가), "currency")
Cells(입력행, 7) = cmb결재형태
txt제품명 = ""
txt수량 = ""
txt단가 = ""
cmb결재형태 = ""
End If
End Sub
위 프로시저에서 cadte를 빼도 날짜는 입력되던데 꼭 cdate를 써야하나요? 문제에서 언급도 없었고 셀서식에서 확인해도 날짜 형식이 맞습니다.
CDATE(문자열) 함수는 날짜 형식으로 된 문자열을 날짜로 변환해 주는 것입니다.
컨트롤에 입력된 값이 2009-09-02와 같이 날짜 형식으로 되어 있다고 해도 이것을 텍스트로 인식하는 경우가 있습니다.
그러므로 cdate를 사용하여 날짜 형식으로 변경해 주는 것입니다.
cmb날짜의 값을 날짜 형식으로 변환해 주기 위해 사용된 것입니다.
문제 지시사항에 해당 함수가 제시되지 않았고 결과가 정확히 나오면 안 적으셔도 됩니다.
좋은 하루 되세요.
-
관리자2020-10-12 20:31:43
CDATE(문자열) 함수는 날짜 형식으로 된 문자열을 날짜로 변환해 주는 것입니다.
컨트롤에 입력된 값이 2009-09-02와 같이 날짜 형식으로 되어 있다고 해도 이것을 텍스트로 인식하는 경우가 있습니다.
그러므로 cdate를 사용하여 날짜 형식으로 변경해 주는 것입니다.
cmb날짜의 값을 날짜 형식으로 변환해 주기 위해 사용된 것입니다.
문제 지시사항에 해당 함수가 제시되지 않았고 결과가 정확히 나오면 안 적으셔도 됩니다.
좋은 하루 되세요.