[過去ログ] Excel VBA 質問スレ Part80 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
266(3): 2023/12/13(水)11:21 ID:bFxo3E2h(1/4)調 AAS
>>264 レスありがとうございます
質問の意図はもっと単純で、複数ブックが開いているとき、Book1のマクロでcells(1.1).value=1みたいなコードを実行したとして、
実はBook2がアクティブだとBook1じゃなくてBook2の方が書き換わっちゃう
けど、操作したいセルをワークブック、ワークシートの順で書いとけば特定できる
ならば、複数ブックが開いていて、各ブックに同名のUserForm1があるとどうなるの?
どのブックかの明示は必要?書き方は? ということでした
(これを書いた方が良かったですね)
んで、カキコした後、試しにBook1、Book2にそれぞれ同名のUserForm1を作ってブックが2つ開かれてる状態にしても特に何も起きない
Book2をセル選択状態にして、Book1でUserForm1.ShowとやるとBook1側のユーザーフォームが開く
じゃあ、どのブックかの明示は不要?ほかの問題は起きないの?というのが現在の疑問です
マイクロソフトのリファレンスくらいは見ているのですけど理解できていません・・ 以前、オブジェクト階層樹形図のようなものがあった気がするけど、それも見つけられず・・
https://learn.microsoft.com/ja-jp/office/vba/language/reference/user-interface-help/userform-object
268: 2023/12/13(水)11:26 ID:bFxo3E2h(2/4)調 AAS
>>266
一般のネットブラウザだと字がちいさいと思います、すみません
スレチですが時々発生するのも疑問です
269(1): 2023/12/13(水)13:47 ID:b26gKOXL(1/3)調 AAS
>>266
ブックじゃなくてプロジェクトのメンバー
例えばプロジェクト名がVBAProject1で、UserForm1っていうフォームモジュールがあるとして
dim a as VBAProject1.UserForm1
set a = new VBAProject1.UserForm1
で指定できる
プロジェクト名はメニューのツール→(プロジェクト名)のプロパティとかから設定可能
271(2): 2023/12/13(水)14:05 ID:ZzGWLSGP(2/2)調 AAS
>>266
じゃあ、みんな大好きオフィスTANAKAさんのこれで
http://officetanaka.net/excel/vba/tips/tips103.htm
変数に入れとけば他のファイルには影響出ないんじゃないかな、と
>Book2をセル選択状態にして、Book1でUserForm1.ShowとやるとBook1側のユーザー
フォームが開く
これは、Book1で・・の時点で選択状態が移行しちゃってるんじゃないのか?
あと、このページの中ほどで説明してるけど
https://www.kurumico.com/excel-vba-userform-show-2/4065/
>・実は、事前にメモリにロードされていないまま Showメソッドで UserForm を
>表示する場合、自動的にメモリにロードされているんです。
ここがミソか
いくつもファイルを開いて作業することが多いケースなら、Show では無く Load を使えと
最後にちゃんとUnLoadするのも忘れずに
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.040s