• ベストアンサー

Excelを閉じたらスクリーンキーボードも閉じるには

Excelでスクリーンキーボードより文字入力していますが Excelを閉じてもスクリーンキーボードはWinXPに付属している為、閉じないのですがExcelを閉じたらスクリーンキーボードも閉じるようにするにはどのように設定したら閉じますでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.1

エクセルVBAの経験ありますか。 多分操作による、どこかの設定では難しいと思います。 http://officetanaka.net/excel/vba/tips/tips61.htm を使わせてもらって エクセル標準モジュールに Sub Sample2() Dim WD Set WD = CreateObject("Word.Application") If WD.Tasks.Exists("スクリーン キーボード") Then MsgBox "スクリーン キーボードを終了" WD.Tasks("スクリーン キーボード").Close End If WD.Quit Set WD = Nothing End Sub を入れて、実行すると、終了します。 「スクリーン キーボード」の2語の間は半角スペースでした。 ファイル名を指定して実行で、osk.exeでスクリーンキーボードをhらいておいて、実行して見ました。 エクセルを閉じるときなので エクセルのThisWorkbookのBeforeCloseイベントに Private Sub Workbook_BeforeClose(Cancel As Boolean) End Sub に上記のコードを挟む Private Sub Workbook_BeforeClose(Cancel As Boolean) Sample2 End Sub こういうのが判らなければ、断念せざるをえない。 たまたまワードにTasks.Existsガあったから簡単なコードでできそうですが。 コンピュター関連では、素人でも簡単に思いつく課題が、解決には、大変な勉強が必要なものが多いですよ。

qq4w2299
質問者

お礼

書込み有難う御座いました。 今、内容はよく理解できていないのですが、ThisWorkbookにマクロを記述しています。 Private Sub Workbook_Open()     ~省略~ End Sub この下に Private Sub Workbook_BeforeClose(Cancel As Boolean) Sub Sample2() Dim WD Set WD = CreateObject("Word.Application") If WD.Tasks.Exists("スクリーン キーボード") Then MsgBox "スクリーン キーボードを終了" WD.Tasks("スクリーン キーボード").Close End If WD.Quit Set WD = Nothing End Sub とコピーさせていただいたのですがうまく動作しません。 どう記述したらよいでしょうか? Sample2 End Sub

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

#1です。 違います。Sub Endをネストさせるのではありません。 Sub Sample2() Dim WD Set WD = CreateObject("Word.Application") 略 Set WD = Nothing End Sub はイベントプロの中に直接入れるなら 最初の Sub Sample2() 最後の End Sub の2行だけを除きます。 ーー 独立させるなら イベントプロの外へ置いて、 Private Sub Workbook_BeforeClose(Cancel As Boolean) Sample2 End Sub で一まとまり 外に別に Sub Sample2() Dim WD Set WD = CreateObject("Word.Application") 略 Set WD = Nothing End Sub で1まとまりとして、それらを書きます。今回はコピペですが。 ーーー 上記ガうまくいったとして スクリーンキーボードを使用してないときエクセルを 閉じるとエラーになるでしょう。 開いているかどうか調べる方法は、上記WEB記事に載っています。 本当はこれも入れないといけないが、質問者の補足のレベルでは、ゆっくり勉強してからやってください。

qq4w2299
質問者

お礼

書込み有難う御座いました。 イベントプロの中に直接入れる為 Dim WD Set WD = CreateObject("Word.Application") If WD.Tasks.Exists("スクリーン キーボード") Then MsgBox "スクリーン キーボードを終了" WD.Tasks("スクリーン キーボード").Close End If WD.Quit Set WD = Nothing と記述させていただきましたが ダイアログBOXで"スクリーン キーボードを終了"が出て それをOKしないと閉じないのですが Excel右上の[×]で閉じたらスクリーン キーボードが閉じるようにしたいのですがどう記述したら良いでしょうか?

関連するQ&A

  • スクリーンキーボード

    私は手が不自由で文字の入力はXPについているスクリーンキーボードを使っているのですが、一文字ずつクリックして入力しているのでローマ字入力よりひらがな入力の方が速いし楽です。 そこでお聞きしたいのですがキーボードの表示をひらがなにすることはできますか? スタート→アクセサリ→ユーザー補助→スクリーンキーボード

  • winxpスクリーンキーボード

    winxpスクリーンキーボード スクリーンキーボードに かな 表示したい かな入力が 解りません ご回答お願い致します。

  • スクリーンキーボードについて。

    WinVistaを使用しているのですが、  最所キーボード入力がうまくできなかったのでスクリーンキーボードを つかっていましたが、いつの間にか設定がPC起動時毎回スクリーンキーボードが  立ち上がってしまいます。その設定の解除方法がわかりません。

  • キーロガーとスクリーンキーボード

    キーロガー対策として、Windows標準のスクリーンキーボードは有効でしょうか? それとも、スクリーンキーボードで入力した文字も記録されてしまうのでしょうか?

  • スクリーンキーボード

    xpのアクセサリーの中にスクリーンキーボードがありますが,これは,ロシア語の言語設定をした場合,このキーボードの文字がロシア語に変わるように設定できるのでしょうか.

  • スクリーンキーボードで大文字表示するには

    OSはWin11です。 スクリーンキーボードで入力した文字はShiftとCapsで大文字小文字が切替えられますが、この時キーの表示も連動して大文字小文字になる設定はないでしょうか。 よろしくお願いします。

  • スクリーンキーボードが使えなくなってしまいました。

    私は、手に障害を持っていて、キーボード操作が一切できないので、PCを使う時はマウスのみを操作して、文字入力などはスクリーンキーボードを使っています。 最近始めたMMO(オンラインゲーム)で、X-Trapというセキュリティーが導入されてしまい、そのゲームを起動しているとスクリーンキーボードが一切反応しなくなりました。 ゲームをするにも、その他の入力作業をするにも反応しないので困っています。 何か良い方法がありましたら、ぜひ情報をお待ちしています。 よろしくお願い致します。

  • スクリーン キーボード

    スクリーン キーボードが小さくなってしまい、 スクリーン キーボードで文字がうてなくなってしまいました。ご回答の程宜しくお願いいたします。

  • スクリーンキーボードの不具合

    スクリーンキーボードの不具合 Windows7(64bit)のスクリーンキーボードにおいて 1.「Shiftキー」を押してもキー表示は大文字のままです。   入力文字は大文字になるのですが。 2.「Fnキー」を押しても機能しない。   Fnキーを押すとスクリーンキーボードにf1~f12キーは   表示されるのですが機能しません。   カタカナ変換やアルファベット変換ができません。 手に障害がありスクリーンキーボードを使用しております。 (ATOK2010を使用) 仕事ができず困っております。 どなたかご教授のほどよろしくお願いします。

  • スクリーンキーボード表示

    タブレットTW708CASにキングソフト、ウイルスバスターをインストール済です。キングソフトのどのソフトを起動し入力しようとしても、自動的にスクリーンキーボードが表示されません。毎回、設定→簡単設定→キーボード→スクリーンキーボードを有効しなけらばならいのですが。自動的にスクリーンキーボードが表示させる方法ありますか。 ※OKWaveより補足:「NEC 121ware :タブレット」についての質問です

専門家に質問してみよう