• 締切済み

【VBA】既存のウィンドウを開いて結果を得たい

moon00の回答

  • moon00
  • ベストアンサー率44% (315/712)
回答No.1

ウインドウというよりは、ダイアログというキーワードのほうがいいと思います。 ダイアログの呼び出し方は、下記のサイトが参考になると思います。 http://www.relief.jp/itnote/archives/excel-vba-xlbuiltindialog-list.php 戻り値の取得は、ダイアログを閉じた後に、その値を保持している変数を読み取ることでOKかと。 シート保護の場合は、「ProtectContents」がそれに当たります。 trueなら保護されていますし、falseなら保護されていません。

関連するQ&A

  • 既存のマクロをVBAで実行したい

    アクセスの2003です。 既にデーターベースウインドウ上に作成済みのマクロ1を フォーム上のコマンドボタンを押したときに実行するようにしたいのです。 このマクロの内容を変換コードになどして、VBE上に書き込むしかないですか? 理想としては、 Sub ボタン_Click() マクロ1を実行 End Sub のようにしたいです。 ご教授よろしくお願い致します。

  • VBA

    VBEの標準モジュール(例Module1)にVBAのプログラムを書き、 実行した時、ワークシート(例Worksheets(”sheet1”)のウインドウを自動的に開くには(前面に持ってくるには)どのようにコーディングすれば良いのでしょうか。今は実行後確認するため、プロジェクトのSheet1で右クリックして「オブジェクトの表示」でSheet1を出したり、タスクバーをクリックしていますが。まずSheet1を前面に出して処理をしたい。Activate,Select、Showなど試しても効果がありません。

  • エクセルVBAで保護したシート内の書式設定を可能にしたい

    お世話になります。 『記入可能セルに記入させ、「送信」フォームを押すと、1箇所文字の色が変わり、添付されてメールで送られる。』というマクロを組みました。 その後、 シートがたくさんあるので、VBAを使って、一度にシートの保護、非保護を行いました。 以下はその記述文です。 Sub 保護() Dim Ws As Worksheet For Each Ws In Worksheets Ws.Protect Password:=111 Next End Sub Sub 保護解除() Dim Ws As Worksheet For Each Ws In Worksheets Ws.Unprotect Password:=111 Next End Sub この保護のマクロを使うと、記入可能なセルは、セルの書式設定の保護タブからチェックをはずしており全く問題ないのですが、 「色が変わる」という設定がエラーになります。 どのようにしたら、色が変わるのも許可されるマクロになるのでしょうか。 ご教示お願いいたします。

  • VBAについて

    保護をしているsheetにおいて、保護を解除してコピーをしてまた保護をする マクロを組みたくてマクロの記録でして見て其れを記入したのですが 実行時エラー'424'オブジェクトが必要です。 となります、 どのように記入したら良いでしょうか。 Activsheet.unprotect と記入しています。

  • VBAにていろいろ質問させてください

    VBAの処理です。 本来なら別々に質問しなければいけないのですが、 どれでも良いのでお分かりになるものを教えてください。 (1)複数のフォームを起動する場合、既にそのフォームが起動中であるとしる方法。またそのフォームを画面最前線に表示する方法。 (2)ExcelシートのコントロールにはLostFocusが使用できるのですが、VBAのActiveXコントロールにはありません。代替機能はありますか?(必須チェックなどしたいのですが) (3)フォームで[?]ボタンでヘルプを出力したいです。 [?]は閉じるボタンの横に配置できたのですが、 [?]に対する各コントロールのヘルプはどう設定すればよいのですか? すみません。どれでも良いので教えてください

  • VBA シートの切り替えができないようにするには

    こんにちは。いつもこちらでお世話になっています。 現在、VBAでフォームを利用したマクロを組んでいます。 あるボタンを押したときにマクロが実行された後、終了ボタンを押すまでの間はアクティブシートを移動してほしくない場合、シートの切り替えができないように制御したいのですが、ワークシートに直接イベントとして記述したくない場合はどうしたら良いでしょう? いっそのこと、ウインドウからシート選択ができないように画面を操作すれば良いのでしょうか? その方法はどうやって記述すればいいのでしょうか? それとも、シート切り替えのイベントをフォームで感知することができるのでしょうか? 困っています、、どなたか助けてください。 ウィンドウからシート選択ができないようにする方法だけでも結構です。 よろしくお願いします。

  • [Excel VBA]シートの

    Visual Basic Editorを起動し、"プロジェクト エクスプローラ"と"プロパティウィンドウ"を表示した状態で、適当なシートを選択すると、"プロパティ ウィンドウ"の一番上の"(オブジェクト名)"欄に、今現在設定してある値が表示されます。 で、その値は"プロパティ ウィンドウ"から直接変更することは簡単にできますが、マクロから変更する方法が分かりません。 私がやりたいのは、マクロからシートを追加し、シート名と、この"(オブジェクト名)"を設定することです。 どなたか方法を知っている方がいましたら、是非ご教授お願い致します。

  • Excel VBA オブジェクトの指定方法と速度

    Excel VBAについて質問です。 ワークシートを指定するときの書き方には色々ありますが、1~3の速度の順番はどうなりますか? オブジェクトは、変数に入れて使用したほうが速度が速くなるそうなので、 1より2のほうが速いと思いますが、3はどうでしょうか? 1.Worksheets("sheet1") 2.Dim ws As Worksheet   Set ws = Worksheets("sheet1") 3.Sheet1 (VBE画面で表示されるシートのプロパティのオブジェクト名) Excelのオブジェクトについて詳しいかたがいらっしゃいましたら教えてください。 よろしくお願いいたします。

  • VBA Shapes コピーと名前

    どうも、お世話になっています。 VBA初心者です。 エクセルのワークシート上の ActiveSheet.Shapes("Picture 1") を コピペするマクロを 作っているのですが あらたにコピーされた図形の名前を設定できますか。 出来たオブジェクトを選択するマクロができなくて困っています。 ご教授願います。

  • エクセル2000でのVBAについて

    エクセル2000のマクロで下記のことをやりたい。 保護がかかっているシートのあるセルに、オブジェクトの挿入したファイル を貼り付けたい。 あるセルの書式の保護のロックを解除しても貼り付けができない。 シートの保護を外さないとできないのでしょうか。 シートの保護を外さないでできる方法はありますか? あれば教えてください。                       以上