Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


74973 / 76738 ←次へ | 前へ→

【6216】Re:セルの入力規制について
回答  BOTTA  - 03/6/19(木) 14:12 -

引用なし
パスワード
   Junさん、こんにちは。
このコードでは、セルに値を入力するたびに、入力規則を設定してしまいます。
同じセル範囲に、同じ入力規則を何度も設定するのは、あまり意味がないと思います。

例えば、BOOKをOPENしたとき→Private Sub Workbook_Open()等に設定する。

それと、保護されたシートに入力規則を設定することは出来ません。
一旦、解除して→ActiveSheet.Unprotectを加える。
終了時、再度保護→ActiveSheet.Protectとする。

例)BOOKをOPENした時のコード
Private Sub Workbook_Open()
  With Worksheets("Sheet1") '←適宜Sheet名を変更して下さい
    .Unprotect
    .Cells.Locked = False
    .Range("1:1").Locked = True
    With .Range("e:e").Validation
      .Delete
      .Add Type:=xlValidateWholeNumber, _
      AlertStyle:=xlValidAlertInformation, _
      Formula1:="5", Formula2:="10"
      .ErrorTitle = "整数値"
      .ErrorMessage = "入力できるのは、5 から 10 までの値です。"
    End With
    .Protect
  End With
  '↓入力後にセルを上へ移動する場合この4行も記述
  With Application
    .MoveAfterReturn = True
    .MoveAfterReturnDirection = xlUp
  End With
End Sub
これをThisWorkbookモジュールに貼り付けて試してみて。
尚、シート保護時のパスワードは設定していません。
0 hits

【6196】セルの入力規制について Jun 03/6/19(木) 10:30 質問
【6216】Re:セルの入力規制について BOTTA 03/6/19(木) 14:12 回答
【6220】Re:セルの入力規制について Jun 03/6/19(木) 14:35 質問
【6231】Re:セルの入力規制について BOTTA 03/6/19(木) 18:05 回答
【6240】Re:セルの入力規制について Jun 03/6/20(金) 9:07 お礼

74973 / 76738 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free