WinActorでエクセルシートからスプレッドシートへのコピペがおかしい

WinActorのシナリオのなかで、エクセルの複数のセルをコピーして、ChromeのGoogleスプレッドシートに貼り付けることがありましたが、セルにスペースを含んだ文字がある場合におかしな挙動をしたので、単純にはできませんでした。

はじめに手動でのエクセル→スプレッドシートのコピペの動作を検証しました。

コピペの動作検証環境

  • Google Chrome 78
  • エクセル2016

エクセルのセルをコピー→スプレッドシートにペースト

以下の画像のようなセルをコピーし、そのまま張り付けてみます。

実際の操作

  1. エクセルのセルをコピー(Ctrl+C)
  2. スプレッドシートにペースト(Ctrl+V)

結果

スプレッドシートに書式と値が張り付けられるはずですが、4行目と6行目がおかしいです。

4行目・・・全角スペースが半角スペースに変換された!?
6行目・・・半角スペース2つが消えた!?

値のみのペーストしてみる

実際の操作

  1. エクセルのセルをコピー(Ctrl+C)
  2. スプレッドシートに値のみペースト(Ctrl+Shift+V)

結果

正常にペーストされました。

エクセルの書式は不要で、値がほしいため「値のみ貼り付け(Ctrl+Shift+v)」をシナリオで使用します。

シナリオのなかでCtrl+Shift+vが効かない

ブラウザ起動.ums6でChromeを起動すると新規プロファイルで起動します。このChromeを操作して、スプレッドシートを開き、エクセルのセルをコピペ(値のみのペースト)しようとしました。

ところが、ショートカット(Ctrl+Shift+v)でも、右クリック→特殊貼り付け→値のみ貼り付けも動作しません。なにも反応しません。

Ctrl+vは反応し、すべて貼り付けることは可能です。 ただし、上記のようにスペースが変換されてしまいます。

拡張機能 Google オフライン ドキュメント が必要

値のみ貼り付けが、通常起動するChromeではできていたのに、シナリオから呼び出したChromeではできなかっため、違いを調べていたところ、Ctrl+Shift+vはChromeの拡張機能の「Google オフライン ドキュメント」が必要なことがわかりました。

ブラウザ起動.ums6から起動するChromeにはこの拡張機能は含まれていません。よって、解決方法は「通常起動するChromeを利用する」か、「シナリオで拡張機能をインストールする」のどちらかです。

シナリオで拡張機能をインストールする

シナリオのなかでCtrl+Shift+vをする前に、拡張機能をインストールすることにしました。拡張機能するページを表示し、画像マッチングでクリックしました。インストール後にスプレッドシートのページを表示すると、正常にCtrl+Shift+vができました。

この方法で安定するのかは不明です(>_<)

WinActorの問題ではなく、Chromeが標準でサポートしてないのが原因ですね。Chromeの仕様がかわるかもしれませんが、 しばらく動かしてみます。

以上です。

Systemrpa, winactor

Posted by zzz