• ベストアンサー

そのシートだけのユーザーフォーム

ユーザーフォームをあるワークシートだけ表示してるときに機能させたいのですがどのようにすればいいのですか? 違うシートを開いたときにはユーザーフォームを実行できないようにして、できれば違うシートを選択した時にはユーザーフォームを消せればいいのですが。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

ユーザーフォームを使いたい程の人ですので簡潔に、 そのシートに以下のマクロを貼り付けて下さい。 *--------------------------------------------------- Private Sub Worksheet_Activate()  UserForm1.Show (vbModeless) End Sub Private Sub Worksheet_Deactivate()  UserForm1.Hide End Sub *---------------------------------------------------

jo-ster
質問者

お礼

ありがとうございました。 教えてもらった通りやったらできました。

関連するQ&A

  • ユーザーフォームを表示中にシートの操作をさせるには

    ユーザーフォームを表示中にシートの操作をさせる事はできるのでしょうか。 セルへの入力、画面のスクロールなどは、ユーザーフォームからマクロを実行させたり、.hideでユーザーフォームを一時的に隠すなどすればいいのでしょうが、そういう手段をとらないでユーザーフォームを表示中にシートの操作をさせる事はできるのでしょうか。

  • エクセルVBA ユーザーフォームのボタン

    ユーザーフォームにCommandButton1があります ワークシートにもCommandButton2があります ユーザーフォーム上のCommandButton1をクリックすることで、ワークシート上のCommandButton2をクリックするという命令は作れるのでしょうか? ワークシート上のCommandButton2をクリックした後の命令は出来ているのですが、そのコードをコピーしてユーザーフォーム上のCommandButton1のコードにコピーするしかないのでしょうか? 実行ボタン(CommandButton2)をワークシートに作成したので、 ユーザーフォームで入力→ ユーザーフォーム上のボタン(CommandButton1)をクリック→ ユーザーフォームは終了→ ワークシート上の実行ボタン(CommandButton2)をクリック してくれると良いかと思いました よろしくお願いします

  • ユーザーフォームにワークシートを表示させる。

    Offics Professional Plus2010を使用しています。あるサイトで「ユーザーフォームにワークシートを表示させる。」を見て説明通り行いましたが、「Microsoft Office Spreadsheet」がなく、説明通りOfficsのCDを入れ、「機能の追加/削除」を選択、Excel項目の+を外しましたが中に見当たりません。あるのは「NET プログラミンサポート」と、「アドイン」と、「サンプルファイル」です。何を選択したら良いのでしょうか?教えてください。

  • EXCELのVBAで、あるワークシートでのみ使うユーザーフォームを作り

    EXCELのVBAで、あるワークシートでのみ使うユーザーフォームを作りました。そのワークシート上での定数や、プロシージャや関数をワークシートのモジュールに置いています。そして、その定数や関数などをユーザーフォームのイニシャライズなどで使いたいと思いますが、ユーザーフォームのモジュールはワークシートのモジュールとは別なので、使えません。他への影響を考えると、標準モジュールには、置くのは不適切だと思います。 特定のワークシート上でのみ使うユーザーフォームと、そのワークシートとで、共通の定数や関数などを使う方法は、あるのでしょうか。どのようにすればよいのでしょうか。

  • エクセルのユーザーフォームについて

    現在、ワークシートの内容を見やすくするためにユーザーフォームを使用し表示させています。印刷は、ユーザーフォームにコマンドボタンを配置し、ワークシートを印刷しています。 せっかくユーザーフォームで見やすいレイアウトにしているので、表示させた内容をユーザーフォームごと印刷できればと考えています。 画面のハードコピーとかではなくて、コマンドボタンをクリックすることで印刷したいのですが、どなたか教えてください。

  • ユーザーフォームにワークシートの内容を表示したいのですが

    エクセル2003を使用しています。 ユーザーフォームを利用してワークシートの内容を表示させたり変更したりすることを考えています。方法はプロパティーのControlSourceにセル番地を書いてあります。 複数のシートがあり1つのシートにつき1件のデータです。 作業したいシートをアクティブにしてユーザーフォームを表示させると、前回作業した内容のままでユーザーフォームが表示されてしまいます。 一度消して再表示するとアクティブシートの内容を表示します。 このような状態なのですが、当然最初からアクティブシートの内容を表示させることが希望です。改善策はありますでしょうか。

  • ユーザーフォームのデータをそのまま保存する方法

    エクセルでユーザーフォームを作成し、エクセルのワークシート上のボタンからユーザーフォームを表示するようにしました。 ワークシート上のボタンをクリックして表示されたユーザーフォームにデータを入力してユーザーフォームを終了しワークシートを保存終了、再度そのワークシートを開いてボタンからユーザーフォームを表示すると入力したデータが消えてしまいます。 ユーザーフォームに入力したデータがそのまま保存できて次に開いたときにデータが残っている方法はありませんか? 今回、ユーザーフォームを作成をした目的は、ユーザーフォームに入力したデータを元に住所録等を作成するためではありません。ですからユーザーフォームに入力したデータはワークシートと連動させていません。 やりたいことは、ワークシート上に氏名一覧があり、個々の氏名欄にボタンを作成して、その人のデータ一覧をユーザーフォームで表示させるということです。 ユーザーフォームは、人数分を作成する予定です。

  • エクセルのユーザーフォーム表示について

    ユーザーフォームを作成して、ワークシートのデータを帳票形式に表示しています。 これを閲覧だけ可能にして、ユーザーフォームから編集できないようにするにはどのようにすればよいのか教えて下さい。

  • ユーザーフォームの表示

    マクロでユーザーフォームを作成しました それをワークシート上に表示させたいのですが方法がわかりません ネットで調べてみるとShowメソッドを使うとありますがやり方がイマイチわからないのです。 どなたかわかりやすく解説して下さい

  • エクセルVBAユーザーフォーム

    ユーザーフォームに入力後ワークシートへ転記されるのですが、そのカーソルがワークシート側に行ってしまいます。連続して入力したいのですが、ユーザーフォームにもどるようにするにはどうしたらよいのでしょうか? 教えて下さい。よろしくお願いいたします

専門家に質問してみよう