dポイントプレゼントキャンペーン実施中!

お世話になります。

環境
Windows2000
VB6.0
Office2003

現在、VBでOffice系のファイルを対象に処理をするプログラムを動かしています。

【問題】
Office2003(Word/Excel)保存設定に[読み取り専用を推奨する]というチェックが存在します。
このチェックをすると、Officeファイルを開くとき、読取専用として開くかどうかのダイアログが出てしまい、処理が止まってしまいます。
このダイアログを出さずに処理する方法はありませんか?
【現在】
Private Function blnCnvExcel(ByRef objCnvFile As File, _
ByVal strCnvPdfName As String) As Boolean
Dim objFso As New FileSystemObject
Dim objPdfFile As File
Dim objApp As Application '' Excelアプリケーション
Dim objXls As Workbook '' Excelワークブック
Dim objSheet As Worksheet '' ワークシート
Dim strCnvFolder As String '' 出力先フォルダ
Dim SheetName() As String ''表示シート格納


blnCnvExcelToPdf = False

strCnvFolder = objCnvFile.ParentFolder

Set objApp = CreateObject("Excel.Application")
Set objXls = objApp.Workbooks.Open(objCnvFile.Path)

A 回答 (2件)

> 多分IgnoreReadOnlyRecommendedですと、


> 読み取り専用にチェックが入っている場合ですよね。

「多分」とは試してないって事でしょうか?
実際に試されてダメだったのであれば、VB6.0もExcel2003も無いのでこれ以上アドバイスは出来ませんが、試しもしないでの発言だとしたらちょっと失礼ですね。

繰り返しになりますが、VBAのヘルプには

【読み取り専用を推奨する】チェックボックスをオンにして保存されたブック
^^^^^^^^^^^^^^^^^^^^^^
とあります。

こちらで確認可能な Excel97と2000でも「読み取り専用を推奨する」チェックは存在しますのでExcel2003で新たに追加されたオプション機能では無いですし、VBAの下記コードで「読み取り専用を推奨する」チェックを入れたブックを開く際には Test1 だとメッセージは出ません。

Sub Test1()
Dim fName
 fName = Application.GetOpenFilename
 If fName = False Then Exit Sub
 Workbooks.Open fName, IgnoreReadOnlyRecommended:=True
End Sub

Sub Test2()
Dim fName
 fName = Application.GetOpenFilename
 If fName = False Then Exit Sub
 Workbooks.Open fName
End Sub

また、VBAでは下記でも出ません。

Sub Test3()
Dim fName
 fName = Application.GetOpenFilename
 If fName = False Then Exit Sub
 Application.DisplayAlerts = False
 Workbooks.Open fName
 Application.DisplayAlerts = True
End Sub
    • good
    • 0
この回答へのお礼

返信遅くなってしまい、大変申し訳ありません。

>試しもしないでの発言だとしたらちょっと失礼ですね。

試しもせずに、決め付けたような書き方をしてしまいました。すいません。
papayukaさんのやり方で試してみます。
自分はまだ初心者なので時間もかかると思いますが、試したら結果を書き込みます。

ほんとにすいませんでした。

お礼日時:2005/01/31 16:25

VBは解かりませんが、VBAだとOpenメソッドの引数にIgnoreReadOnlyRecommended があり、ヘルプには下記のように書いてありますよ。



IgnoreReadOnlyRecommended 省略可能です。バリアント型 (Variant) の値を指定します。[読み取り専用を推奨する] チェック ボックスをオンにして保存されたブックを開くときでも、読み取り専用を推奨するメッセージを非表示にするには、True を指定します。

この回答への補足

回答ありがとうございます。

多分IgnoreReadOnlyRecommendedですと、読み取り専用にチェックが入っている場合ですよね。

今回の場合、厄介なことに読み取り専用にはチェックが入っておらず、
「~保存する必要がなければ読み取り専用で開いてください。読み取り専用で開きますか?」
というダイアログなのです。
http://www.microsoft.com/japan/technet/prodtechn …
このページで[読み取り専用を推奨する保護]で検索してみてください。

やはり無理なのでしょうか?

補足日時:2005/01/19 14:25
    • good
    • 3

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A