![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
タイトルの件、下記の画像をご覧ください。
全部で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
![「【マクロ】フォルダを2つのモニターの定位」の質問画像](http://oshiete.xgoo.jp/_/bucket/oshietegoo/images/media/8/165419_6310da42d66e1/M.gif)
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で質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【マクロ】フォルダを3つ、POモニター上に、決まった並べ方をしたい 4 2022/08/31 11:05
- Excel(エクセル) 【マクロ】フォルダAからダBへファイルを、ファイルの更新日時の条件で、1つづつ移動するには? 3 2022/08/25 09:56
- Excel(エクセル) 【VBA】ファイルパスに半角スペースが入ると、VBAが動かない 5 2022/08/04 20:52
- Visual Basic(VBA) あるフォルダーのファイルを違う親フォルダーのサブフォルダーに移したい 11 2023/02/15 19:00
- Android VBA、フォルダのパスに環境文字 ㉑ があり、VBAが機能しません。 2 2022/07/27 09:16
- Excel(エクセル) 【VBAファイル移動】2つのマクロを順に実行。1つ目のマクロが実行不可⇒2つ目が実行不可となる件 2 2022/07/29 12:17
- Excel(エクセル) 【マクロ】ファイルを古い順に、1個ずつ移動する 1 2022/09/06 20:30
- Visual Basic(VBA) 【マクロ】フォルダにファイルが1つも無い時に、ファイルがありませんとメッセージを表示する 4 2022/08/28 08:48
- Excel(エクセル) マクロのコードを、少しでも削って短くしたい 3 2022/08/30 07:46
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/07/02 11:48
このQ&Aを見た人はこんなQ&Aも見ています
-
「どうして捨てられないの?」前妻の物を捨てられない男性の心理って?
前妻の物を捨てられない理由に加え、捨てるための手段はあるのかを専門家に聞いてみた!
-
【マクロ】フォルダを3つ、POモニター上に、決まった並べ方をしたい
Excel(エクセル)
-
2画面表示でのVBAのボタン押下後のform表示の位置
Excel(エクセル)
-
複数モニタ使用時のフォームの表示位置してい
C言語・C++・C#
-
-
4
デュアルディスプレイ 起動画面を指定するには?
モニター・ディスプレイ
-
5
指定したフォルダーを最前面表示にする方法
Visual Basic(VBA)
-
6
指定のWORKBOOKを前面表示する方法(エクセル:VBA)
Excel(エクセル)
-
7
どこにもフォーカスを当てたくない
Access(アクセス)
-
8
VBAで任意のウインドウのサイズを変更する方法
Visual Basic(VBA)
-
9
マクロ実行後に別シートの残像が残り、オブジェクトが見えなくなる
Visual Basic(VBA)
-
10
Excelのセルにユーザー名を表示する方法
Excel(エクセル)
-
11
VBAで既に開いている別アプリケーションのオブジェクトを得る
Visual Basic(VBA)
-
12
Excel VBAでデュアルディスプレイを使用するメリットについて
Excel(エクセル)
-
13
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
14
VBA シートのボタン名を変更したい
Visual Basic(VBA)
-
15
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
16
Excel(VBA)
Excel(エクセル)
-
17
マルチディスプレイを使用していますがexcelマクロが使えない
Visual Basic(VBA)
-
18
VBAマクロ実行時エラーの修正について
Visual Basic(VBA)
-
19
PDFファイルを開き、印刷し、閉じるマクロ
Visual Basic(VBA)
-
20
Adobe Reader を閉じる
その他(Microsoft Office)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
フォルダについて。
-
フォルダのサムネイル画像
-
excel VBA 部分一致の名前をパ...
-
I386フォルダの役目とは
-
撮影後、SDカードに作成される...
-
C:\\Documents and Settingsが...
-
画像取り込み不可とフォルダの作成
-
excel VBA 特定の文字列を含む...
-
お気に入りフォルダの名前はど...
-
エクスプローラ、「上へ」でフ...
-
Windows 変数名は大文字小文字...
-
コマンドプロンプトの使い方
-
Win10でのスタートアップ...
-
Thunderbird 振り分けされなく...
-
ブラウザにIPアドレスを直打ち...
-
Tera Termでのコマンド流し込み...
-
2010でShiftキーを使っても自動...
-
エクセルで定期的(30分おき)...
-
コマンドの戻り値が「130」
-
VBAのタイマー
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
フォルダのサムネイル画像
-
C:\\Documents and Settingsが...
-
元のフォルダに矢印キーで帰りたい
-
大量のフォルダへのハイパーリ...
-
フォルダについて。
-
excel VBA 部分一致の名前をパ...
-
撮影後、SDカードに作成される...
-
excel VBA 特定の文字列を含む...
-
【マクロ】フォルダを2つのモ...
-
I386フォルダの役目とは
-
お気に入りに追加したのに表示...
-
お気に入りフォルダの名前はど...
-
バッチファイルの親フォルダを...
-
エクセルVBAで相対パスでフォル...
-
謎のフォルダ「ドネュメント」
-
AccessVBAで特定の文字を含むフ...
-
iPhoneでフォルダに分けして整...
-
【マクロ】フォルダを3つ、PO...
-
ファイル検索結果をフォルダパ...
-
写真や動画を保存する、これら...
おすすめ情報