[[20040115002903]] 『VBA:ユーザーフォームが開かないように』(翼) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『VBA:ユーザーフォームが開かないように』(翼)

ファイルを開くと、ユーザーフォームが開くようにしてあります。ユーザーフォームとは別に、保存するマクロを作っていて、別名にて保存されます。原本には上書きされないようになっています。この状態で、一旦別名にて保存したファイルを開いたときに、ユーザーフォームが開かないようには出来るのでしょうか?一番いいのは、保存するときにユーザーフォームのマクロを消去出来たりしたらいいんでしょうが、おそらくそんなマクロはないと思いますので・・・

どなたかよきアドバイスをお願いします。


 ブックを開いてときにユーザーフォームが開くようにしてある限り、
 ユーザーフォームが開きます。
 ユーザーフォームを開くのを[コマンドボタン]を押すようにする
 くらいでしょうか?

 というより、わざわざ別名で保存する意味が本当にあるのか
 考えるべきでしょう。
(kazu)


 翼さんがどのようにフォームを実行されているかがわかりませんが、
 フォーム実行時のイベントでブック名を判断してShowメソッドを
 実行させなければよいのではないかと想像します。
 下記はWorkbook_Openイベントでブック名がBook1.xlsの時だけ
 UserForm1を実行します。

 Private Sub Workbook_Open()
   If ThisWorkbook.Name = "Book1.xls" Then
     UserForm1.Show
   End If
 End Sub

 ↑ユーザーフォームの件はよかったのでしょうか。

 (KAMIYA)


 スミマセン、私が書き込みを分割したので、かえってややこしく
 なったようです。
 (kazu)

 こちらも分割されたのに気がつきませんでした。
 >というより、わざわざ別名で保存する意味が本当にあるのか
 >考えるべきでしょう。
 それは言えるかも。
 実は私も初期はそのようなブックに分かれたデータを量産してしまい、
 いざ統計を取るのに大変苦労しました。

 というか、現在進行形ですね。
 過去に作成した、日時の記録をブックわけして保存するマクロで
 現在運用中のものがあるので、日々ブックが量産されています。
 切り替えるための作業は現在進めていますが、
 蓄積したブックはどうやって整理しようか、頭を抱えてます(泣)。

 翼さん、こういうことがない様、気をつけましょう。
 (KAMIYA)

 >おそらくそんなマクロはないと思いますので・・・
 無いことはありませんが・・

 >保存するマクロを作っていて、別名にて保存されます。
 もし全部のマクロが不要なので有れば、新規ブックにシートのデータをコピーして
 名前を付けて保存すればよいかと思います。

  (INA)

すいません。ちょっと見ない間に、こんなに多くの方々からの御意見を頂戴致しました。KAMIYA様の、

 Private Sub Workbook_Open()
   If ThisWorkbook.Name = "Book1.xls" Then
     UserForm1.Show
   End If
 End Sub

を、利用させて頂きます。ただ、kazu様、KAMIYA様がおっしゃるように、別名で保存するのも、考え物ですね。あと、INA様、マクロを消去するマクロって、あるんですか?INA様がおっしゃるように、新規のブックにデータだけをコピペするしか、私の頭では、思いつきませんが・・・

でもまあ、様々な方々からのアドバイスありがとうございました。今後も、このサイト利用させて頂きます。                       (翼)


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.