掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
VBで作成したプログラムを外部で実行するには? (ID:100578)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
(・−・)ん? >VBの画面を非表示にするのはやっぱり出来ないようですね。 VBの画面とは「Visual Basic Editor」のことですか? ひょっとして「サブ/ユーザーフォームの実行」を使っていますか? ThisWorkbookに以下の記述をすればいいですよ? Private Sub Workbook_Open() Application.WindowState = xlNormal Application.Left = UserForm1.Left + 1 Application.Top = UserForm1.Top + 1 Application.Width = UserForm1.Width Application.Height = UserForm1.Height UserForm1.Show (vbModal) Application.Quit End Sub ま、一瞬だけExcelが表示されたりしますけど。 チラミ☆-(ノ゜Д゜)八(゜Д゜ )ノイエーイ エクセルの表示を消すために「Application.Visible」プロパティをFalseにした場合、タスクバーからも隠れてしまいます。 この状態でVBAのエラーが発生してVBAが強制終了した場合、エクセルは終了されずにプロセスに残り続けます。 Application.Visibleはできるだけ避けておいたほうが良いでしょう ちなみにWorkbook_Openイベントは、xlsファイルを実行したとき(開いたとき)に自動的に発生するイベントです。 マクロの警告がうるさいときは、「ツール→マクロ→セキュリティ」のセキュリティレベルを「低」にしておく必要があります。 ただしVBAの編集ができなくなるので、戻すときはファイル無しでExcelを起動してセキュリティレベルを変更すればよいです。 上記のままだと、Excelのサイズが変更されてしまうので、ちょっといまいちです。 Private Sub Workbook_Open() Static xPos As Long Static yPos As Long Static xSize As Long Static ySize As Long xPos = Application.Left yPos = Application.Top xSize = Application.Width ySize = Application.Height UserForm1.Left = 300 'ここにユーザーフォームを UserForm1.Top = 200 '表示したい位置を書く Application.WindowState = xlNormal Application.Left = UserForm1.Left + 1 Application.Top = UserForm1.Top + 1 Application.Width = UserForm1.Width Application.Height = UserForm1.Height UserForm1.Show (vbModal) Application.Left = xPos Application.Top = yPos Application.Width = xSize Application.Height = ySize Application.Quit End Sub とかね。 まぁ、vbModalだと都合が悪いときはまた違った書き方が必要ですが。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.