こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

VB2008を使用していますが教えて下さい。

VB2008を使用していますが教えて下さい。
VBからExcelブックを開く時に「マクロを有効にする」を選択する画面を表示させずに直接ユーザフォームを表示させて、ExcelVBAを利用したいのですが、どうしても上手く出来ません。いろいろネットで調べて試行しているのですが、どれもエラーになってしまいます。
現在下記の(1)(2)をExcelVBAの内容により使い分けをしています。助言方よろしくお願いします。


(1)
この記述では「マクロを有効にする」は表示されず直接ユーザフォームが表示されます。ただ、VBA上で新たなExcel形式のファイルを出力させても画面上に表示されません。
※Visible=True の記述で解消しそうですが分かりません。

Dim xlApp As Object = CreateObject("Excel.Application")
Dim xlBooks As Object = xlApp.workbooks
Dim xlBook As Object = xlBooks.Open(FileName:="c:test.xls")

xlApp = Nothing
xlBooks = Nothing
xlBook = Nothing

(2)
この記述では「マクロを有効にする」を選択する画面が表示されてしまいます。ただ、ExcelVBA上で新たなExcel形式のファイルを出力できます。

Dim proc As New Process()
proc.StartInfo.FileName = "c:test.xls"
proc.Start()
proc = Nothing

投稿日時 - 2010-08-08 16:05:05

QNo.6095400

すぐに回答ほしいです

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

>新たなExcel形式のファイルを出力させても
どういう意味でしょう?
単にExcel画面が見たいならアプリケーションの
VisibleプロパティをTrueにします。
xlApp.Visible = True

投稿日時 - 2010-08-09 15:11:13

お礼

お礼が遅くなり申し訳ありませんでした。
私も xlApp.Visible = True を記述するのだろうとは思っていたのですが
書く場所を間違ってました。(1)が正解ですね。(2)の場所に書いてました・・・

Dim xlApp As Object = CreateObject("Excel.Application")
xlApp.Visible = True ・・・(1)
Dim xlBooks As Object = xlApp.workbooks
Dim xlBook As Object = xlBooks.Open(FileName:="c:test.xls")
xlApp.Visible = True ・・・(2)
xlApp = Nothing
xlBooks = Nothing
xlBook = Nothing

投稿日時 - 2010-08-19 14:17:32

ANo.1

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問