Excel (VBA)

Excel VBAに関するフォーラムです。
  • 掲示板への投稿には会員登録(無料)が必要です。会員登録がまだの方はこちら
  • 掲示板ご利用上のお願い」に反するご記入はご遠慮ください。
  • Q&A掲示板の使い方はこちらをご覧ください
トピックに返信
質問

 
(指定なし : 指定なし)
VBAで指定サイズのchromeを起動する
投稿日時: 19/11/06 08:20:45
投稿者: zero2

Excel VBAでchromeを起動しようとしています。
--new-window や-urlを付けて新しいウィンドウで、サイトを指定しての起動はできました。
 
しかし、ウィンドウのサイズや位置を指定して起動できません。
 
お教えください。

回答
投稿日時: 19/11/08 08:44:43
投稿者: NoLookUp

chromeの終了時状況…ひいては次回起動時情報…が保存されるファイルの中のウィンドウ表示位置情報を書き換えてやる方法。
 
%LOCALAPPDATA%\Google\Chrome\User Data\Default\
フォルダの
Preferences
というファイルがそれです。
 
JSON形式のテキストファイルです。
 
"window_placement"キー内の "top" "left" "right" "bottom" がウィンドウ表示位置情報です。
その値をchromeの起動前に書き換えてやればいいわけです。
 
簡単に書きましたが、引っかかるのが2点
(1)JSONデータの取り扱い方
 ⇒どこかからVBAのJSONパーサーを拾ってくる(見慣れないので工数がかかる?)
 ⇒InStr,Midなどの文字列操作関数を使いまくる
(2)対象のファイルがUTF8型式
 ⇒ADODB.Streamオブジェクトを利用する
 
以上、そんな感じです。

回答
投稿日時: 19/11/08 08:49:44
投稿者: NoLookUp

追記
 
あらかじめchromeが起動されてる状態で件のファイル内容を改竄させるとどうなるか保証できません。
作業前にChromeのプロセスをKillしたり、バックアップファイルを作成してから作業を行います。

回答
投稿日時: 19/11/10 14:32:22
投稿者: simple

まあ、普通に考えると、WindowAPIでハンドルを取得できれば、
大きさ、位置の指定はできるだろうと想像するが、
キャプションではうまくハンドルが取得できなかった。
 
ああ、どなたかから回答があるだろうと思っていました。
 
NoLookUpさんの回答による手法も随分難しい手法ですねえ。
 
ところで、ネット情報によると、
https://backy0175.at.webry.info/201806/article_6.html
という記事があり、
"C:\Program Files\Google\Chrome\Application\chrome.exe" --window-position=150,10 --window-size=1190,880
でOKらしい。へえーという感じ。
 
でも、どんな場面でそうしたことが求められるか不明ですけど、
位置大きさは直前のものを踏襲するようなので、
一度、お好みの位置、大きさに変更して保存すれば、
次からはそれがデフォルトになる。
私だったら、そうした手作業でOKとしちゃうね。
 
# 質問したまま回答があっても反応なしという点に、
# 私はなんだかなあ・・・、と思っている。

トピックに返信