前提・実現したいこと
ウェブページの内容をPDFとして保存したい。
そのために、VBAでSeleniumを通じてGoogleChromeを操作し、印刷画面の「PDFとして保存」を実行したい。
より具体的には、Excelで以下のようなマクロを作成したい。
①Chromeを起動
②Chromeの設定を変更(プリンタを「PDFとして保存」、印刷プレビューを表示せず印刷実行、など)
②あらかじめセルに記入したURLへページ遷移し、印刷実行
④エクセルの次のセルにて③を繰り返す
発生している問題・エラーメッセージ
②にて、設定変更が機能しない。
(プリンタがデフォルトのまま、印刷プレビューが表示された状態でマクロが一時停止する)
該当のソースコード
Dim driver As New Selenium.ChromeDriver driver.Start "chrome" driver.AddArgument "--kiosk-printing" driver.SetPreference "Save as PDF", True Dim I As Integer I = 1 Do Until Cells(I, 1).Value = "" driver.Get Cells(I, 1).Value driver.ExecuteScript ("return window.print()") I = I + 1 Loop
試したこと
下記のように書き換えてみましたがエラーになりました。
①
driver.ChromeOptions.AddArgument "--kiosk-printing"
②
Dim ChromeOptions as New driver.ChromeOptions
ChromeOptions.AddArgument "--kiosk-printing"
補足情報(FW/ツールのバージョンなど)
①
印刷プレビューは表示されているので、AddArgumentやSetPreferenceはエラーになっていないようですが、設定変更はできていません。
②
PDF化さえできればよいので、上記コードとは別のアプローチを教えていただく形でも全く問題ありません。
よろしくお願いします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。