いつもお世話になっております。
エクセルブック開いたとき
別プロセスで開き
エクセルを非表示にして
ユーザーフォームだけを起動したいのですが
わかる方おしえてくれませんでしょうか
下記のコードは検索などしてテストしてやっていますが、
どうにもわかりません。
Private Sub Workbook_Open()
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Set xlSheet = xlBook.Worksheets(1)
Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Add
Set xlSheet = xlBook.Worksheets(1)
xlSheet.Visible = True
UserForm1.Show vbmodless
Cancel = True
End Sub
No.2ベストアンサー
- 回答日時:
Option Explicit
Private Sub Workbook_Open()
If Workbooks.Count > 1 Then
If Not ThisWorkbook.ReadOnly Then
ThisWorkbook.ChangeFileAccess xlReadOnly, Notify:=False
End If
With New Excel.Application
.Workbooks.Open ThisWorkbook.FullName
End With
If VisibleWindowsCount > 1 Then
ThisWorkbook.Close
Else
Application.Quit
End If
Else
Application.Visible = False
UserForm1.Show vbModeless
End If
End Sub
Private Property Get VisibleWindowsCount() As Long
Dim win As Window
For Each win In Windows
If win.Visible Then
VisibleWindowsCount = VisibleWindowsCount + 1
End If
Next win
End Property
ご返信遅れてすみませんでした。
いろいろ検索しましたが
うまくいかず、
このような コード頂戴
するとはおもいませんでした。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) バックグラウンドのプロセスのエクセルを閉じる方法 4 2022/05/12 15:39
- Visual Basic(VBA) excel VBAでメールを送る方法について 2 2021/11/03 15:34
- Visual Basic(VBA) エラー処理 3 2022/04/11 14:58
- Excel(エクセル) 2つのVBAを一緒にしたら機能しなくなりました(エクセル) 7 2022/06/02 12:41
- Excel(エクセル) VBA Scripting.Dictionary 連想配列 複数参照する方法 2 2021/12/17 01:52
- Visual Basic(VBA) VBA 別ブックからの転記の高速化について VBA 別ブックからの転記の高速化についてご教授下さい。 19 2022/07/26 13:07
- Visual Basic(VBA) VBA Application visibleのやり方 3 2021/11/28 20:51
- Visual Basic(VBA) EXCEL VBA シート貼り付け 3 2021/11/15 12:33
- Visual Basic(VBA) マクロVBA 1シートをまとめる 閉じ方 初心者 SOS! 1 2022/06/17 14:54
- Visual Basic(VBA) サブフォルダ含むすべてのフォルダの Excel 検索 4 2021/12/13 09:33
このQ&Aを見た人はこんなQ&Aも見ています
-
外出時に「待たせる妻」vs イライラする「待つ夫」は日本だけ?見習いたい海外事情
夫の家事参加に積極的なイメージのある海外でも、同様の事例はあるのか。結婚カウンセラーの佐竹悦子さんに伺ってみた。
-
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
excelが別プロセスで起動してしまう
その他(Microsoft Office)
-
ExcelVBAでListViewが使用できない
Visual Basic(VBA)
-
-
4
ListView 項目の選択/選択解除について
Visual Basic(VBA)
-
5
ListViewで複数選択された項目を一度に削除する方法
Visual Basic(VBA)
-
6
【VBAユーザーフォームで閉じるボタンを表示したくない】
Visual Basic(VBA)
-
7
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
8
VBAを何回も作り直して、容量が増えた
Excel(エクセル)
-
9
VBAでユーザーフォームの表示を確認
Visual Basic(VBA)
-
10
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
11
VBA public変数はどのようなことをしたら解放されますか?
Visual Basic(VBA)
-
12
バックグラウンドのプロセスのエクセルを閉じる方法
Visual Basic(VBA)
-
13
別インスタンスのエクセルを制御したい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アウトルックが起動しているか...
-
Windows上のプログラム。「予め...
-
VBSから別のVBS起動するとき変...
-
ASPでPMT関数が使いたい...
-
VBで実行中のEXEファイルの情報...
-
WinSCPで画像のように puttyを...
-
リムーバブルディスクのフォー...
-
MSDOS(バッチファイル)でプロセ...
-
ウィンドウを終了させたい・・・
-
別アプリの起動、終了について
-
VB6で呼び出し元の情報を取得す...
-
VBで別のプログラムを起動し他...
-
エクセル起動時別プロセスで開く
-
VBSで起動したアプリが前面表示...
-
VBAでSeleniumからChromeを起動...
-
「FindWindow」、ウィンドウハ...
-
HTMLタグの中にDLLを埋め込む事...
-
mscomm32.ocxの登録方法
-
フォームの最前面が効かない
-
ACCESS VBAで別のACCESS(mdb)を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
アウトルックが起動しているか...
-
VBAでOutlookを終了させたい Ex...
-
VBSから別のVBS起動するとき変...
-
Windows上のプログラム。「予め...
-
VBSで起動したアプリが前面表示...
-
VBで実行中のEXEファイルの情報...
-
キー操作 (WSH:コピー&ペー...
-
EXCEL VBAから他アプリケーショ...
-
Process.Startで起動したアプリ...
-
VBAでSeleniumからChromeを起動...
-
64bitで作ったEXEを32bitで起動...
-
ACCESS VBAで別のACCESS(mdb)を...
-
「FindWindow」、ウィンドウハ...
-
VBAでIEが起動しているか...
-
Shellで起動したプログラムのウ...
-
VBSでExcelのUserFormをエクス...
-
Vba アプリケーションが立ち上...
-
exeファイルを実行するとすぐに...
-
フォームの最前面が効かない
-
別アプリの起動、終了について
おすすめ情報
お世話になっております。このサイト先ほど拝見いたしました。
考え方をかえて 最初に別のワークブックにユーザーフォームと
コマンドボタンを作りそこから、
Set xlApp = New Excel.Application
xlApp.Visible = True
Set wb = xlApp.Workbooks.Open(ThisWorkbook.Path & "\ff.xlsx")
で処理すると良い結果がでました。
しかし、最初に開くワークブック
ActiveWindow.Visible = False
UserForm1.Show vbModeless
Cancel = True
とすると ActiveWindow.Visible = False
黄色になります。