質問するログイン新規登録

回答編集履歴

2

誤字を修正

2021/02/11 01:34

投稿

Daregada
Daregada

スコア11992

answer CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  [Why keyDown(shift) function is not working for python pyautogui for Excel Automation - Stack Overflow](https://stackoverflow.com/questions/51367311/why-keydownshift-function-is-not-working-for-python-pyautogui-for-excel-automa)
6
6
 
7
- それに対する回答によれば、**左シフトキー(shiftleft)と右シフトキー(shiftright)を両方押した状態にすると、PyAutoGuiでExcelのシフトキーを使ったキー操作(範囲選択など)を行なえるようです。
7
+ それに対する回答によれば、**左シフトキー(shiftleft)と右シフトキー(shiftright)を両方押した状態にする**と、PyAutoGuiでExcelのシフトキーを使ったキー操作(範囲選択など)を行なえるようです。
8
8
  なんじゃそりゃって感じですが、実際に手元で実験したところ、左右のシフトキーを両方押した状態にすることで操作が行なえました。
9
9
 
10
10
  以下は、A1セルを基点として、10x10の範囲を選択するためのコードです。

1

補足を追加

2021/02/11 01:34

投稿

Daregada
Daregada

スコア11992

answer CHANGED
@@ -8,6 +8,7 @@
8
8
  なんじゃそりゃって感じですが、実際に手元で実験したところ、左右のシフトキーを両方押した状態にすることで操作が行なえました。
9
9
 
10
10
  以下は、A1セルを基点として、10x10の範囲を選択するためのコードです。
11
+ 補足: データが記入されているか不明だったので→キーと↓キーを9回押すコードを書きましたが、10x10の範囲にだけデータが記入済みなら、コメント化してあるCtrl+→キーとCtrl+↓キーを押すコードを使ってください。
11
12
 
12
13
  ```Python
13
14
  import pyautogui as pg
@@ -23,6 +24,9 @@
23
24
 
24
25
  # 現在のセルから9個右、9個下のセルまで順次移動して10x10のセルを選択
25
26
  pg.press(['right', 'down'], presses=9)
27
+ # すでに10x10の範囲にデータが記入済みなら、↑をコメントにして↓を使えばOK
28
+ # pg.hotkey('ctrl', 'right')
29
+ # pg.hotkey('ctrl', 'down')
26
30
 
27
31
  # ExcelでShiftキーを離した状態にするにはこれが必要
28
32
  pg.keyUp('shiftright')