3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ブラウザのキャプチャをエクセルに自動で貼る【PowerShell】

3
Last updated at Posted at 2026-03-28

概要

E2Eテストの手動実施時に発生する、エクセルへのスクリーンショット貼り付け作業を想定
しています。
ペタペタ作業は直接的に品質向上に寄与しないので、少しでも時短しようという旨です。

alt + printscreenで貼り付けが動くので、Web画面撮影以外の用途でも一応使用できます

機能

  • クリップボード監視: Alt+PrintScreen でキャプチャした画像を自動でExcelに貼付
  • ブラウザ自動撮影: Chrome / Edge のURL変化を検知し、ページ遷移時に自動スクショ
  • 安定判定: URLと画面の両方が安定したタイミングで撮影(ローディング中は待機)
  • マルチモニター対応: 2枚目以降のモニターに表示されたブラウザも正しく撮影
  • 日時記録: 貼付画像の1行上に撮影日時を自動記録(ON/OFF切替可)
  • スクロール追従: 貼付のたびにExcelが自動スクロール

動作環境

  • Windows 10 / 11
  • PowerShell 5.1 以上
  • Microsoft Excel(起動済みであること)
  • Chrome または Edge

セットアップ

追加インストールは不要です。スクリプトファイルをダウンロードするだけで使えます。

実行ポリシーの確認

PowerShellで以下を実行し、スクリプトの実行が許可されているか確認します。

Get-ExecutionPolicy

Restricted と表示された場合は以下を実行します。

Set-ExecutionPolicy -Scope CurrentUser RemoteSigned

使い方

1. Excelを開く

貼付先のExcelファイルを開いておきます。

2. 設定を編集する(任意)

スクリプト冒頭の設定欄を編集します。空欄のままでも動作します。

$CFG_FILENAME   = ""     # 貼付先ファイル名(部分一致)。空欄=アクティブなファイル
$CFG_SHEETNAME  = ""     # 貼付先シート名。空欄=アクティブシート
$CFG_COLUMN     = ""     # 貼付列(例: "C")。空欄=C列
$CFG_BROWSER    = ""     # 監視ブラウザ("chrome" or "msedge")。空欄=両方
$CFG_SHOW_DATE  = $true  # 日時記録($true=する / $false=しない)
$IMG_WIDTH      = 400    # 貼付画像の幅(ピクセル)
$IMG_HEIGHT     = 300    # 貼付画像の高さ(ピクセル)
$ROW_STEP       = 20     # 画像1枚あたりの行数
$START_ROW      = 3      # 最初の貼付行

3. スクリプトを実行する

PowerShellでスクリプトを実行します。

.\EvidenceAuto.ps1

起動すると以下のように表示されます。

File     : テスト証跡.xlsx
Sheet    : 証跡
Column   : C
Show date: True

Watching clipboard and browser URL... Press Ctrl+C to stop

4. テストを実施する

ブラウザ操作(自動)

ブラウザでページを遷移するだけで自動撮影・貼付されます。

その他の画面(手動)

Alt+PrintScreen でアクティブウィンドウをキャプチャすると自動で貼付されます。

5. 停止する

PowerShellウィンドウで Ctrl+C を押します。


Excelのレイアウト

$CFG_SHOW_DATE = $true の場合、以下のように貼付されます。

行2  │ 2025/03/28 14:30:22  ← 撮影日時
行3  │ [画像1]
...
行22 │ 2025/03/28 14:31:05  ← 撮影日時
行23 │ [画像2]

注意事項

  • スクリプト実行中はExcelを開いたままにしてください
  • SPAなどURLが変化しないページ遷移は自動撮影されません。その場合は Alt+PrintScreen を押下する必要があります(自動貼り付けは動きます)

トラブルシューティング

症状 対処
型名 'ScreenCapture' は既に存在しています PowerShellウィンドウを閉じて新しいセッションで実行
ブラウザ遷移が検知されない $CFG_BROWSER"chrome" または "msedge" を明示的に指定
画像が見切れる $IMG_WIDTH / $IMG_HEIGHT を大きくする
画像が重なる $ROW_STEP を大きくする
ページ読み込み前に撮影される タイムアウト(5秒)が発動している。ネットワークが遅い場合は正常動作
3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?