2012-09-11 2 views
0

콤보 상자가 포함 된 Access 2000 양식이 있습니다. 콤보 상자는 테이블의 필드에 바인딩됩니다. 테이블의 값이 null 일 때 레코드를 더럽 히지 않고 콤보 상자에 기본값을 설정하려고합니다. 새 레코드가 아니면 defaultValue 설정이 작동하지 않습니다. 값을 설정하려고하면 "이 객체에 값을 할당 할 수 없습니다"라는 오류 메시지가 나타납니다.Access 2000 콤보 상자에서 기본값을 설정하는 방법

의견이 있으십니까? Me.cboName.Value 나를! cboName.Value을 =

이 기존 기록에 아무것도 안 '이 Me.cboName.DefaultValue 나를 =

위에서 언급 한 오류! cboName.Value 원인'.

+1

어떻게 보이나요? 기록이 지저분하지 않은 경우, 그 값은 어떻게 저장됩니까? 가치가 저장되지 않은 이유는 무엇입니까? – Fionnuala

답변

0

NEW RECORD가 생성되면 DefaultValue이 입력됩니다. 값을 기존 레코드에 표시하려면 ... 이것을 수행하는 가장 쉬운 방법은 언 바운드 컨트롤을 사용하는 것입니다. 사용중인 필드 theName는 현재 이벤트에있는 경우 예를 들어, 다음과 같은 코드를 사용하십시오 :

Private Sub Form_Current() 
    me.cboName.value = Nz(me.theName.value,defaultValue) 
End Sub 

DEFAULTVALUE은 이전에 결정된 기본 값입니다. 이것은 효과적으로 이름에 대한 두 개의 컨트롤을 요구합니다 ... 하나는 바운드 값과 하나는 표시된 값이 있습니다. 이렇게하면 cboName을 변경할 때 theName을 업데이트하는 코드를 추가해야합니다.

Remou가 제안했듯이 적어도 조금 지저분한 일이기 때문에 이것이 정말로 당신이하고 싶은 일인지 스스로에게 물어야합니다.

관련 문제