アプリ版:「スタンプのみでお礼する」機能のリリースについて

accessのフォームのチェックボックスを動くようにしたいです。

あるフォームは起動時、更新の許可を「いいえ」に設定しています。フォームの値をいじらせないようにしているためです。

編集可能釦をおしたときに、この更新許可を「はい」にしています。

起動時(起動後)に、あるチェックボックスだけ、動作するようにしたいのですが、なにか簡単な方法はありますでしょうか?
チェックボックスが無理でしたら、他の操作ボックスでもよいです(西暦・和暦を指定しているだけのチェックボックスです)

p.s. フォームには、テキストや、コンボなど沢山あるため、できれば更新「いいえ」はそのままにしたいです。

A 回答 (3件)

お節介な上にコードが間違っているという・・・m(_ _)m



Sub subContorolLock()

 Dim objForm As Object
 Dim cnt As Control

 Set objForm = Me

 For Each cnt In objForm.Controls
  If cnt.Name = "チェックボックス1" Then
   cnt.Locked = False
  Else
   cnt.Locked = True
  End If
 Next
End Sub

ロック/非ロックが反対でした・・
失礼いたしました。
    • good
    • 0
この回答へのお礼

ありがとうございます。
上記方法で検討したいと思います。
助かりました。

お礼日時:2010/05/06 09:10

#1です。



面倒とのことですが、どういった処理を行う予定でしょう?
例えば、単に特定のチェックボックスのみを非ロックにして、その他をロックしたい場合は、

Sub subContorolLock()

 Dim objForm As Object
 Dim cnt As Control

 Set objForm = Me

 For Each cnt In objForm.Controls
  If cnt.Name = "チェックボックス1" Then
   cnt.Locked = True
  Else
   cnt.Locked = False
  End If
 Next
End Sub

のようにループさせてやっても出来ます。

お節介失礼いたしました^^;
    • good
    • 0

フォーム単位での更新不許可なので、コントロール単位での更新許可/不許可を変更したい場合は、コントロール単位で制御をする必要があります。



ですので、追伸部分に反しますが、将来の汎用性から考慮しても、コントロール制御用のファンクションを用意して、コントロール単位での制御に変更することをお勧めします。

ロックをする場合は
Me!コントロール名.Locked = True
もしくは
Me!コントロール名.Enabled = False
で使用不可にすることで対処できます。
    • good
    • 0
この回答へのお礼

ありがとうございます。

やはり、フォームの設定なので、更新は許可にしなければいけないのですね。

一つ操作を加えたいだけで、全部ロックにするのは、ちょっと面倒ですががんばります。
ありがとうございます。

お礼日時:2010/04/28 15:57

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す