
タイトルの件、下記の画像をご覧ください。
全部で4つのフォルダを下記の画像のように
並べるマクロを教えて下さい。
2つのモニターを並べています
【マルチモニター】
画像のとおり、左のモニターに3つのフォルダ
右のモニターに1つのフォルダです。
画像のようにぴったりくっていなくても
スキマが少しあってもいいです
出来れば、フォルダを開くところから
スタートするマクロが良いです。
フォルダを開くだけのマクロは下記のコードのとおりです。
ご存じのかた、いましたらよろしくお願いします
【フォルダパス】
C:\Users\2020\Desktop\フォルダA
C:\Users\2020\Desktop\フォルダB
C:\Users\2020\Desktop\フォルダC
【フォルダA、フォルダb、フォルダC、フォルダDを開くマクロ・コード】※動作確認済
Const 半角スペース = """"
Sub sample()
Dim Apath As String
Dim Bpath As String
Dim Cpath As String
Dim Dpath As String
Apath = "C:\Users\2020\Desktop\フォルダ A"
Bpath = "C:\Users\2020\Desktop\フォルダ B"
Cpath = "C:\Users\2020\Desktop\フォルダ C"
Dpath = "C:\Users\2020\Desktop\フォルダ D"
CreateObject("WScript.Shell").Run 半角スペース & Apath & 半角スペース
CreateObject("WScript.Shell").Run 半角スペース & Bpath & 半角スペース
CreateObject("WScript.Shell").Run 半角スペース & Cpath & 半角スペース
CreateObject("WScript.Shell").Run 半角スペース & Cpath & 半角スペース
End Sub

No.1ベストアンサー
- 回答日時:
こんばんは
回答する事で質問者は考える事をしなくなるのではないか・・
回答する時にいつも考えてしまいます。
少なくともそのような事は望んでいません。
個人的希望を書いても意味がないとは思いますが、
自身で考える事をやめてはいけません
作る側の人ならば、
回答で得た結果がなぜそうなるのかを探求しなくては意味がありませんよ
理解した部分を織り込みながらご質問して頂くのが好いと思います
本題
ご質問の場合、すでに質問され回答しています
https://oshiete.goo.ne.jp/qa/13121361.html
の応用で 汎用性には欠けるものではありますが出来ます
汎用性のあるものにするためには、各モニターの座標など設定を取得する
他のAPIも使う必要が出て来ます
そのコードを改めて示しても多分・・(難しくなるだけで、スタッグや環境により不具合の可能性も増えると思います)
先の回答のコードは動いたとの事なので、それを基軸に回答すると
(想定条件)環境により(変わる)変える必要がある項目
左のモニターがモニター1(メイン)
モニター1とモニター2は同じ大きさ
対象パスを4つに増やす
(Dim Rt As RECTとしています)
この場合の左モニターの表示(配置)コードはどのように書きますか?
位置が変わっていますが、先の回答した内容を少し変えれば良いですね
ちなみにメインモニター(タスクバーを除く)左上の座標はRt.Left
では右モニターの左上座標は
先のコードで示すとRt.Right + α
左モニターの右側のさらに右が 右モニターの左はしになります
Windowsから見るとそのような座標になります
つたない説明で申し訳ないのですが、これだけ理解出来たら、実験をしてみてください。そうすれば、少なくともお使いの環境にあったものは作成できると思います
*方法は、一例です 違うアプローチ、ロジックも考えられますので
参考程度でお願いします
No.2
- 回答日時:
こんにちは。
マルチモニタ環境だとモニタ毎に解像度やスケールが異なる場合があって、とても面倒です。WindowsAPI でガリガリに書けなくはないですけど、、
前回のご質問は他ご回答で上手くいったようですね。良かったです。後は最後のウインドウについてですよね。
代案ですが、最後のウインドウはショートカットキーでモニタ移動してみては?
Windowsキー + Shift + →矢印キー
アクティブウインドウを次のモニタに移動します。
Windowsキー + ↑矢印キー
ウィンドウを最大化
これらを VBA.Sendkeys でキー送信します。
実際のキー操作なら上手くいくが、sendkeysで上手く送信できない場合は、kb_event か sendinput などのAPI に変えてみます。
未確認です。アイディアまで。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
【マクロ】フォルダを3つ、POモニター上に、決まった並べ方をしたい
Excel(エクセル)
-
2画面表示でのVBAのボタン押下後のform表示の位置
Excel(エクセル)
-
複数モニタ使用時のフォームの表示位置してい
C言語・C++・C#
-
-
4
Excel VBAでデュアルディスプレイを使用するメリットについて
Excel(エクセル)
-
5
VBAで任意のウインドウのサイズを変更する方法
Visual Basic(VBA)
-
6
ユーザーフォームをホイールでスクロールする方法(Excel2000VBA)
Excel(エクセル)
-
7
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
大量のフォルダへのハイパーリ...
-
フォルダについて。
-
撮影後、SDカードに作成される...
-
フォルダのサムネイル画像
-
excel VBA 部分一致の名前をパ...
-
I386フォルダの役目とは
-
OUTLOOK連絡先をグループ分けす...
-
エクセルVBAで相対パスでフォル...
-
【マクロ】フォルダを3つ、PO...
-
AccessVBAで特定の文字を含むフ...
-
元のフォルダに矢印キーで帰りたい
-
バッチファイルによるフォルダ...
-
共有フォルダ内のフォルダ
-
エクスプローラ、「上へ」でフ...
-
フォルダごと画像変換ソフト(変...
-
Explorerのフォルダウインドウ...
-
鍵マーク付フォルダのユーザ名...
-
画像取り込み不可とフォルダの作成
-
Windows 変数名は大文字小文字...
-
大量のファイルのファイル名を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
フォルダのサムネイル画像
-
撮影後、SDカードに作成される...
-
大量のフォルダへのハイパーリ...
-
フォルダについて。
-
お気に入りフォルダの名前はど...
-
excel VBA 特定の文字列を含む...
-
excel VBA 部分一致の名前をパ...
-
C:\\Documents and Settingsが...
-
元のフォルダに矢印キーで帰りたい
-
エクスプローラ、「上へ」でフ...
-
ディレクトリ数のみを取得する...
-
お気に入りに追加したのに表示...
-
PCで、FF11のマクロデータを移...
-
AccessVBAで特定の文字を含むフ...
-
Microsoft Security Essentials...
-
ツリーのアニメーションについて
-
コマンドプロンプトの使い方
-
フォルダを開くと、検索画面が...
-
ファイルサーバーのアクセス許可
-
I386フォルダの役目とは
おすすめ情報