|
ブックのオープンイベントに
Private Sub Workbook_Open()
UserForm1.Show
End Sub
ユーザーフォームにコマンドボタンを置く。そのボタンに
Private Sub CommandButton1_Click()
Range("A1").Value = "名前を入力してください"
IMEon
GetName = Range("A1").Value
Range("A1").Value = ""
UserForm1.Hide
'取得したGetNameで以下の処理
End Sub
サブルーチンIMEonは
Sub IMEon()
Application.ScreenUpdating = False
With Workbooks.Add
With ActiveCell.Validation
.Add Type:=xlValidateInputOnly
.IMEMode = xlIMEModeOn
End With
InputString = Sheet1.Range("A1").Value
buf = Application.InputBox(InputString)
.Close SaveChanges:=False
End With
Application.ScreenUpdating = True
Sheet1.Range("A1") = buf
End Sub
これらでブックのその時の日本後モードのいかんにかかわらず、名前入力の際自動的に日本語モードにしようとしています。さて、ブックをオープンしても思い通りの日本語モードにならない。
ところがファンクションキーF8でステップ毎にマクロを動かすと思惑通りになる。
また、ユーザーフォームでなくシート上のアクティブXにコードを組めばやはり日本語モードになる。
マクロの間違えを指摘してください。
|
|