質問: format(combobox1, "m月d日") end sub このコンボボックスに例えば、8/30と入力すると「8月3日0」と表示されてしまいます。 これを8月30日と表示するにはどうすれば良いのでしょうか? よろしくお願いします。
回答: changeイベントでの変更よりkeydownイベントで変更したほうがよくありませんか private sub keydown(byval keycode as msforms.returninteger, byval shift as integer) if keycode = vbkeyreturn then combobox1.text = format( combobox1.text, "m月d日") end if end sub といった具合で enterキーが押されたらコンボボックスの内容を変更するようにします changeイベントだけでの対応なら 8 を入力すると 1月7日の表示になります 8/30を続けて入力 1月7日部分を選択してdelキーを押す といった操作をすれば 『8月30日』と表示されます