VBからエクセルを起動する際、すでに開いているファイルは開かないようにしたく、検索をした結果
http://oshiete1.goo.ne.jp/kotaeru.php3?q=237618
の回答があり参考にしたのですが、うまくいきません。
はじめは
Dim xlsApp As Excel.Application
Dim xlsBook As Excel.Workbook
がうまくいかず悩んだのですが、「オブジェクト」-「参照設定」でエクセルを選択することによって解決しましたが、
For Each xlsBook In xlsApp.Workbooks
'見つかったらループを抜ける
If StrComp(xlsBook.FullName, findBookPath, vbTextCompare) = 0 Then
Exit For
End If
Next xlsBook
の部分で上手く引っ掛けることができません。
なにか設定が足りないのか?
どなたか分かる方がみえましたらよろしくお願いいたします。
では
No.2ベストアンサー
- 回答日時:
Excel.Applicationはクラス名(?)です。
Set xlsApp = GetObject(, "Excel.Application")
第2引数になるのでこのようにしたらどうでしょう?
ありがとうございます。
早速やってみました。
そしたら、見事!2重に開かなくなりました。
ありがとうございます。
これでやっと先に進むことが出来ます。
感謝!感謝!
No.1
- 回答日時:
FullNameで受け取るパスは絶対パスだったと思います。
findBookPathは絶対パスになっていますか?
それと、パスの最後等にスペース等が入っているとStrCompは-1を返すので注意してください。
上記の質問ですと、WorkbookをOpenする事は出来ているわけですよね。
そうすると、このぐらいしか思いつかないです。
早速のご回答ありがとうございます。
初心者なのであまり難しいことは分かりませんが、
STOPで止めて確認したのですが、FullNameは”c:¥○○¥○○.xls”
となっており最後に空白は入っていません。
また、OPENはできる状態で、二重に起動してしまう問題です。
後、
On Error Resume Next と
On Error GoTo 0を外して、
エクセルを起動した状態で走らせて見ると
Set xlsApp = GetObject("Excel.Application")
でエラーが出て止まります。xlsApp =notingです。
このあたりに問題がありそうな気がしてきました。もう少し調べてみます。
では
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
ハマっている「お菓子」を教えて!
この世には、おいしいお菓子がありすぎて……。 次何を食べたらいいか迷っています。 みなさんが今、ハマっている「お菓子」を教えてください!
-
家・車以外で、人生で一番奮発した買い物
どんなものにお金をかけるかは人それぞれの価値観ですが、 誰もが一度は清水の舞台から飛び降りる覚悟で、ちょっと贅沢な買い物をしたことがあるはず。
-
CDの保有枚数を教えてください
ひとむかし前はCDを買ったり借りたりが主流でしたが、サブスクで簡単に音楽が聴ける今、CDを手に取ることも減ってきたかと思います。皆さんは2024年現在、何枚くらいCDをお持ちですか?
-
【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
【お題】 ・買ったばかりの自転車を分解してひと言
-
架空の映画のネタバレレビュー
映画のCMを見ていると、やたら感動している人が興奮で感想を話していますよね。 思わずストーリーが気になってしまう架空の感動レビューを教えて下さい!
-
VBAで二重起動を防止したいのですが、
その他(Microsoft Office)
-
EXCELのマクロの重複起動の禁止
Excel(エクセル)
-
既にファイルが開いているのなら開かない(二重起動防
Access(アクセス)
-
-
4
ファイルの2重に開いた場合の処理(エクセルVBA)
Access(アクセス)
-
5
EXCELが二重起動してしまう
Excel(エクセル)
-
6
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルvbaでdocuworksprinter...
-
エクセルVBAで一つ上の階層...
-
Excel 相対パス
-
コマンドプロンプトのコピー関...
-
xcopyコマンドの進行状況を表示...
-
VBS パスに変数を入れたい
-
【VBA】ExcelマクロでCSVファイ...
-
outlook開けない
-
TerapadからFirefoxを開きたい
-
VBAで、VBのapp.pathと同じ機能...
-
【Excel VBA】Power Qurry のソ...
-
VB.NETでのiniファイル読込につ...
-
エクセルのマクロで特定フォル...
-
エクセルの二重起動をやめたい
-
file://について
-
開いているファイルを削除し、...
-
アプリケーションのインストー...
-
エクセルのファイルオープン時...
-
【VB.NET】App.configにファイ...
-
実行ファイルのパスを取得したい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルvbaでdocuworksprinter...
-
Excel 相対パス
-
xcopyコマンドの進行状況を表示...
-
エクセルのマクロで特定フォル...
-
エクセルVBAで一つ上の階層...
-
【VBA】ExcelマクロでCSVファイ...
-
コマンドプロンプトのコピー関...
-
A列に記載されているフォルダ...
-
ExcelVBAの使い方 ¥の使い方...
-
EXCEL(VBA)で指定フォルダ内の...
-
【VB.NET】App.configにファイ...
-
SaveAsの保存先について
-
outlook開けない
-
Eclipse
-
VBAでパワーシェルを実行したい...
-
fopenでのパス指定
-
指定したフォルダ内の最新ファ...
-
開いているファイルを削除し、...
-
VBA★PDFをPDFアプリで印刷し...
-
ExcelのVBAで上書き保存を確...
おすすめ情報