![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
はじめまして。
UserForm1で、デジタルで時間を表示する(デジタル時計)を作成しています。
Excelのアプリケーションを表示せず、フォームのみ表示させたいので、
Application.Visible = Falseとしたいのですが、この方法だと、他のExcel
ファイルを起動する際に、Excelが見えなくなってしまいます。
■やりたいこと
・Excelファイルが1つも開かれていない場合、Excelを非表示にして
Userform1のみ表示されている状態で起動する
・Userform1のみ表示している状態で、他のBooKを開いた場合、
Excelを表示して開いたBookを表示させる
・他のBooKを開いている状態で、Userform1が記述されているBook
を開いた場合、ExcelもUserform1も表示させる
・他のBookを閉じるて、Userform1が記述されているBookのみになった
場合、Excelを非表示にしてUserfrom1のみ表示されている状態にする
自分自身(Userform1を記述しているBook)のみ起動している時には、
Application.Visible=falseにすれば良いのだと思いますが、どういうロジック
を組めば良いかご教授いただければ幸いです。
すみませんが、よろしくお願い致します。
それ以外の時は
No.1ベストアンサー
- 回答日時:
無理。
つうか VBA で苦労してやる内容じゃない。
だいたいが、何に使うのか知らないけれど Excel でやる意味あるの?
時計を表示する Excel ファイルと、時計を表示しているときに開く別の Excel ファイルとの関係がわからない。
時計を表示する Excel ファイルは単にユーザーフォームを表示して時計を刻み続けるだけ。
非表示になっている Excel アプリケーションを表示させるのは、その他の Excel ファイルに書き込むコードの役目であり、時計の Excel ファイルではない。
つまり時計を表示させているときに同時使用する Excel ファイルが限定的じゃない限り破綻する。
質問文をきちんと書き直してみた。
こしてみると、時計表示用 Book 以外にその PC で使用するすべての Book にもコードを書かなければならないということがわかる。
・Excelファイルが1つも開かれていない場合、時計表示用Bookのコードが Excel を非表示にして Userform1 のみ表示されている状態にする。
・他のBooKを開いている状態で、時計表示用 Book を開いた場合、時計用 Book は Excel を非表示にせずに Userform1 を表示させる。
・Userform1 のみ表示している状態で、他の BooK を開いた場合、他の Book のコードが Excel を 再表示する。
・他の Book を閉じて、時計表示用 Book だけになる場合、最後に閉じる他の Book のコードが Excel を非表示にして Userform1 のみ表示されている状態にする。
・Userform1 が表示されていても、他の Book のシートや Excel の各種ユーザー インターフェイスが普通に使用できること。
VB 2012 Express でもインストールして Windows フォームのアプリを作ったほうが早いし、シンプルだと思う。
No.3
- 回答日時:
他のことに挑戦することをお勧めします。
Book または Bookの中のUserFormの中で
定期的に他のBookが開かれていないか workbooks.count とかでチェックして
開かられていたら・・・
開かれていなかったら・・・
の分岐が基本だと思いますが
『定期的』が問題です。
例えば、Do ~ Loop の無限ループで・・などと考えても
UserForm すらまともに機能しないでしょうし
他のBookも開けないんじゃないかと・・(検証してません)
たとえ開けたとしても危なくて何も出来ないのでは?
では、全く出来ないかというと、そうでもなくて
ClassモジュールとAPIを使えば何とかなるかも知れません。
しか~~~~~~~~~~し、べらぼーに難しそうです。
私は根性なし・スキルなしなので止めときます。。。
Tips15: VBAでも出来る [ タイマーコントロール ] クラスモジュール (Ver 3.1)
http://www.h3.dion.ne.jp/~sakatsu/Excel_Tips15.htm
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- その他(パソコン・スマホ・電化製品) CMD等でPC操作(excel開く等)を自動化させたい 1 2023/03/15 09:53
- Visual Basic(VBA) このVBAでExcelアプリケーションを作成は必要ですか? 3 2023/07/19 21:13
- PowerPoint(パワーポイント) エクセルのマクロについて教えてください。 1 2022/03/25 17:03
- Excel(エクセル) Excel起動時にエラーダイアログが表示される 3 2022/07/28 19:52
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/02/17 11:59
- Visual Basic(VBA) VBA Bookの表示、非表示 1 2022/09/16 20:44
- ノートパソコン EXCEL のドキュメントの回復について 2 2023/03/19 17:16
- Excel(エクセル) 至急 Excel日付表示設定教えてください Excelの日付表示ですが、他者から送られてくるExce 6 2023/02/03 11:01
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「時計が進んでいます」パソコ...
-
7時前って何時何分をさしますか?
-
時間が回るとは?
-
パソコンでスライドショーの画...
-
たまごっちの時計合わせ
-
P,Q,R,S,T,Uの6人がそれぞれ1,2...
-
「別な」と「別の」の違いにつ...
-
studyplusについて studyplusと...
-
なぜこの時計はこんなに安いのか?
-
腕時計 時間の合わせ方分かる...
-
飛田新地って15分ー20分のコー...
-
PowerPointのプレゼン画面右下...
-
Baby-Gのアラーム音の消し方を...
-
LINE電話を朝まで繋げると、ア...
-
時計はなぜ丸い?
-
1分はなぜ60秒としたのか
-
42という数字に取り憑かれました
-
パソコンのデスクトップ画面に...
-
力のモーメントの問題で時計回...
-
スマートウォッチについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
たまごっちの時計合わせ
-
「時計が進んでいます」パソコ...
-
なぜこの時計はこんなに安いのか?
-
Baby-Gのアラーム音の消し方を...
-
「別な」と「別の」の違いにつ...
-
7時前って何時何分をさしますか?
-
時間が回るとは?
-
卓上式のデジタル時計、時刻を...
-
JACOB JENSEN HT60 日付・時計...
-
P,Q,R,S,T,Uの6人がそれぞれ1,2...
-
写真のようにiPhoneのロック画...
-
パソコンでスライドショーの画...
-
スマートウォッチについて
-
旦那が職場の人たちと呑みに行...
-
LINE電話を朝まで繋げると、ア...
-
電波時計(掛け時計)の時刻あ...
-
BABY-Gが1時間置きにピピッと音...
-
42という数字に取り憑かれました
-
飛田新地って15分ー20分のコー...
-
昔の柱時計のように、1時間ごと...
おすすめ情報