| 
    
     |  | ブックのオープンイベントに 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にコードを組めばやはり日本語モードになる。
 
 マクロの間違えを指摘してください。
 
 |  |