2015-04-24 3 views
0

Я работаю над формой Access 2010, в которой пользователь может выбрать запись в заголовке формы с помощью выпадающего списка, а затем создать элементы, связанные с выбранной записью, в подробном разделе формы. По умолчанию форма формы устанавливается на непрерывные формы.Настройка свойств текстового поля на непрерывной форме

Одним из элементов управления в разделе подробностей формы является элемент управления со списком. То, что я хочу сделать, - установить свойство enabled текстового поля в той же строке формы на false, основываясь на выборе из выпадающего списка. Код я бег это:

If Me.cboElementType = "Contract Shrink" Then 
    Me.txtElementID = "" 
    Me.txtElementID.Enabled = False 
EndIf 

Это работает, но он устанавливает все экземпляры текстового поля (txtElementID) на разрешенную = ложь. То, что я хочу иметь, - это то, что txtElementID имеет разные разрешенные параметры для каждой строки в разделе подробностей, основываясь на выборе combobox cboElementType. Итак, если cboElementType = «Сокращение контракта» в строке 1 раздела детали прокрутки, txtElementID.Enabled будет установлен в значение false для этой строки. Если cboElementType = «Группа затрат» в строке 2 раздела детали прокрутки, я хотел бы, чтобы txtElementID.Enabled был False в строке 1 раздела подробностей и txtElementID.Enabled для True в строке 2.

Can кто-либо подтверждает или отрицает, что это может быть сделано, и, если это можно сделать, как вы предлагаете это сделать? Независимо от того, в каком направлении это происходит, спасибо за помощь.

ответ

0

Вы не можете сделать это через VBA, как и вы, вам нужно использовать условное форматирование, там у вас есть возможность установить свойство Enabled.

0

попробовать в Form_Current() событие, как

Private Sub Form_Current() 
If Me.cboElementType = "Contract Shrink" Then 
    Me.txtElementID = "" 
    Me.txtElementID.Enabled = False 
EndIf 
end sub 
0

Я искал в течение нескольких дней для того, как получить доступ к отдельной записи в непрерывной форме, и я готов сказать, что это не возможно, но у меня есть трюк что, хотя я бы поделился здесь. У меня есть база данных инвестиций, пользователь получает и записывает предложение, а затем идет встреча, где либо проект одобрен (с учетом денег), либо отменяется. Однако есть еще много государств, в которых может быть проект, предложение, исполнение и т. Д., Но на этом этапе может быть только одобренный/отмененный. Я создал поле MockBool в таблице Project. Я положил, что на непрерывной форме и когда форма закрыта я запускаю это:

rs_frm=me.recordset 
rs_frm.movefirst 
while not(rs_frm.eof) 
    if rs_frm("MockBool") then 
    rs_frm.edit 
    rs_frm("ProcessStatus")="Cancelled" 
    rs_frm("MockBool")=false 
    rs_frm.update 
    end if 
    rs_frm.movenext 
wend 

Я имел дни поиска и осенило, так что я думал, что я хотел бы поделиться.

Смежные вопросы