人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

エクセル VBA マクロ

以下の??の動作が可能になるエクセル VBA マクロを
教えて頂きたく宜しくお願い申し上げます。
使用しているエクセルは2003です

?シート上の特定なセル(ex:F33、F34、G33、G34、C40、C41、D40、D41、、、、、)には、
-(マイナス)、小数点を含む数値のみを許可し入力させたい。(出来ればIMEを使用しないで直接入力させたい)

?また、シート上の特定なセル(ex:C3、C4、C5、、、)には、IMEを使用し、漢字を含む文字を入力させたい。

シート上のその他のセルは、保護機能で入力できないようにロックしています

●質問者: hawk007
●カテゴリ:コンピュータ
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● うぃんど
ベストアンサー

コメントはしたのですが、作ってもしれていたので、
お返事待たずに両方回答しておきます

(1)-(マイナス)、小数点を含む数値のみを許可し入力させたい
1.設定したいセルを選択(複数選択しておいても良い)
2.メニューバーの「データ」→「入力規則」
3.「設定」で入力値の種類欄に「小数点数」、最小値、最大値を適当に設定
4.「日本語入力」で「オフ」

(2)IMEを使用し、漢字を含む文字を入力させたい
1.設定したいセルを選択(複数選択しておいても良い)
2.メニューバーの「データ」→「入力規則」
3.「日本語入力」で「ひらがな」

上記二つの設定をVBAから実行する例

Sub Macro1()
  ' -(マイナス)、小数点を含む数値のみを許可するセル
 Range("F33:F34,G33:G34,C40:C41,D40:D41").Select
 
 With Selection.Validation
 .Delete
 .Add Type:=xlValidateDecimal, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:="-99", Formula2:="+99"
 .IgnoreBlank = True
 .InCellDropdown = True
 .InputTitle = ""
 .ErrorTitle = ""
 .InputMessage = ""
 .ErrorMessage = ""
 .IMEMode = xlIMEModeOff
 .ShowInput = True
 .ShowError = True
 End With
 
  ' IMEを使用し、漢字を含む文字を入力させるセル
 Range("C3:C5").Select
  '
 With Selection.Validation
 .Delete
 .Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator:=xlBetween
 .IgnoreBlank = True
 .InCellDropdown = True
 .InputTitle = ""
 .ErrorTitle = ""
 .InputMessage = ""
 .ErrorMessage = ""
 .IMEMode = xlIMEModeHiragana
 .ShowInput = True
 .ShowError = True
 End With
End Sub
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ