
No.1ベストアンサー
- 回答日時:
こんにちは。
最初に、この前からの私の回答で、もともとの原因を作ったのは私の回答からかもしれませんね。
この件は、ダイアログボックスからの変更の時に、ちゃんと書けばよかったのかなって思っています。以下は、私は、UserForm は不得意で、あまり研究しなかったのですが、私のつたない経験から、書かせていただきます。
No.3094847 「EXCEL のページ違反」では、余計なことだと思って書かなかったことですが、以前、ここで、UserForm の開発で得たいの知れないトラブルに遭っているというプロの方の質問がありました。それは、UserForm と同時にApplicationを終了すると、ハングするという問題です。この時の私の回答では、それぞれの終了のタイムラグがあるのではないか、という予測を立てて対処してもらい問題を解決しました。
その時に考えたのは、UserForm は、あまりExcel本体とつなぎが良くないようですね。
本当の専門の方がいれば分かるのですが、VBAでは、Application.UserFormでは、間違いであるところをみると、どうも、Application直接のオブジェクトではないようです。ダイアログボックスでは、Hide メソッドだけでよかったのですが、UserForm では、Hide と、Unload Me '(UserForm) の両方が必要だということです。そして、最後は、Unload は必要のようです。
そうしないと、場合によってハングします(確認済み)から、今回の別のご質問(上記3094847)の問題と良く似ているように思います。
ちなみに、FOMの教本の最後に出てくる、UserForm だけで、Excelの本体を出さないマクロというのは、私は、あまり関心していません。それは、本当に気をつけないとトラブルを起こす可能性が強いと考えています。
>別名のブックを作り、そちらがOKになっても、読取専用になったブックを削除できません。
この場合は、読取専用として、Attribute(属性)がそうなっているのかは分かりませんが、少なくとも、オブジェクトが、どこかで共有してしまいっている可能性がつよいです。名前を変えるということではなくて、新規で作らないと、片方が立ち上がっている限りは、それは終わらない、ということになってしまいます。
ただし、この情報のいくつかは、現象面だけで内容自体を精査したものではありません。実務的に、そうすると良いなっていう程度のものです。
Wendy02さん
やはりそうでしたか。洒落た手は危ないという囲碁の格言がありますが、マクロでも同じでしたか。
ダイヤログボックスは印刷がダメ、ユーザーフォームはブック開閉がダメなら、表芸で何とか考えるようにします。
大変勉強になりました。ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/03/27 13:25
- Visual Basic(VBA) VBA 複数のブックに同じ列を表示させる方法 2 2022/07/20 23:49
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/10 14:24
- Visual Basic(VBA) エクセルのマクロについて教えてください。 5 2023/06/02 08:44
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/07/04 17:58
- PowerPoint(パワーポイント) エクセルのマクロについて教えてください。 1 2022/03/25 17:03
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2022/03/28 14:52
- Excel(エクセル) Excelを開くとエラーが出る 2 2022/10/03 16:13
- Excel(エクセル) エクセルのマクロについて教えてください。 2 2023/02/21 13:29
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルの関数 ENTERを押...
-
VBAでブックを非表示で開いて処...
-
エクセルを共有するとPCによっ...
-
Excelで複数ブックの同一セルに...
-
Excelで指定範囲のデータ...
-
ブックのピボットを別ブックに...
-
vbaでpdfを開いて1ページ目のみ...
-
Excel VBAでブックを閉じる時、...
-
Excel(2010)のフィルターが保...
-
エクセルで参照しているデータ...
-
Excel 仮装読取専用ブックの削除
-
シェアウェアのような使用期限...
-
VBA バックグラウンドで別ブッ...
-
エクセルでメール送信
-
VBA初心者で勉強中です。 ご教...
-
Excelファイルをダブルクリック...
-
【マクロ】アクティブセルの時...
-
WorkBooksをオープンさせずにシ...
-
参照したいブックのパス名に"["
-
EXCELでVLOOKUPの範囲の編集が...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【マクロ】アクティブセルの時...
-
Excelの新しい空白のブックを開...
-
VBAでブックを非表示で開いて処...
-
エクセルの関数 ENTERを押...
-
エクセルを共有するとPCによっ...
-
Excelファイルをダブルクリック...
-
WorkBooksをオープンさせずにシ...
-
Excelでブックの共有を掛けると...
-
エクセルで参照しているデータ...
-
Excel(2010)のフィルターが保...
-
Excelの警告について
-
Excelで複数ブックの同一セルに...
-
フォルダ内の複数ファイルから...
-
同じフォルダへのハイパーリン...
-
エクセルにおける,「ブック」...
-
別ブックから入力規則でリスト...
-
エクセルで別ブックをバックグ...
-
エクセルでウィンドウの枠固定...
-
エクセルファイルを開かずにpdf...
-
「ブックの共有」を有効にして...
おすすめ情報