本文へスキップ

別館:エクセルQC館 別館:エクセル株式館

  1. トップページ>
  2. Tips>
  3. Excel2010、SendKeysの文字化け対策

Tipstips

備忘録として、主にパソコン関係のTipsを記載して行きます。


新着情報
@UiPath、メモ
AOffice365、Excel:VBAで画面更新がチラツク時の対策
BOffice365、Excel:勝手に手動計算になる原因
COffice365、Excel:フィルターで3つ以上の条件にする方法
DOffice365、Excel:シート同士の違いを見つける方法

Excel2010、SendKeysの文字化け対策

Excel2010は、手頃な価格で高機能な表計算ソフトです。
マクロを使用すると、色々な作業を自動化する事ができて、大変便利です。

しかし、マクロでSendKeysを使用すると、日本語が文字化けする場合が有ります。使用したパソコンは、
下記のソフトを使用していました。

OS       : Windows10(64bit)ビルド 10586.164
表計算ソフト   : Excel2010(32bit)

以下、Excel2010、SendKeysの文字化け対策を記載して行きます。

(項目1)
 ・マクロでSendKeysを使用すると、日本語が文字化けする場合が有ります。
 ・以下のマクロでは日本語で文字化けしませんが、余分な文字が送信される等で不安定です。
  SendKeys "エクセル将棋館", True

 ・一方、Wscript.Shellを使用したマクロは安定していますが、日本語で文字化けが発生します。
  With CreateObject("Wscript.Shell")
    .SendKeys "エクセル将棋館", True
  End With

(項目2)
 ・色々と考えた結果、クリップボードを利用する事を試して見ました。
 ・手順は、以下の通りです。
  @セルに送信したい文字列を入力する。
  Aセルをコピーする。
  BWscript.Shellを使用したSendKeysで送信する。

 ・コードを下記に示します。
  Range("A1") = "エクセル将棋館"

  Range("A1").Select
  Selection.Copy

  With CreateObject("Wscript.Shell")
   .SendKeys "^v", True
  End With

(項目3)
 ・上記の方法で、日本語が文字化けする事無く、安定して送信できました。
 ・纏めると、以下の表となります。
  

(項目4)
 ・以上で、Excel2010、SendKeysの文字化け対策は終了です。



contents

エクセル将棋館

日本国

地方都市


スポンサード リンク