お世話になります。
環境
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件)
- 最新から表示
- 回答順に表示
No.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
返信遅くなってしまい、大変申し訳ありません。
>試しもしないでの発言だとしたらちょっと失礼ですね。
試しもせずに、決め付けたような書き方をしてしまいました。すいません。
papayukaさんのやり方で試してみます。
自分はまだ初心者なので時間もかかると思いますが、試したら結果を書き込みます。
ほんとにすいませんでした。
No.1
- 回答日時:
VBは解かりませんが、VBAだとOpenメソッドの引数にIgnoreReadOnlyRecommended があり、ヘルプには下記のように書いてありますよ。
IgnoreReadOnlyRecommended 省略可能です。バリアント型 (Variant) の値を指定します。[読み取り専用を推奨する] チェック ボックスをオンにして保存されたブックを開くときでも、読み取り専用を推奨するメッセージを非表示にするには、True を指定します。
この回答への補足
回答ありがとうございます。
多分IgnoreReadOnlyRecommendedですと、読み取り専用にチェックが入っている場合ですよね。
今回の場合、厄介なことに読み取り専用にはチェックが入っておらず、
「~保存する必要がなければ読み取り専用で開いてください。読み取り専用で開きますか?」
というダイアログなのです。
http://www.microsoft.com/japan/technet/prodtechn …
このページで[読み取り専用を推奨する保護]で検索してみてください。
やはり無理なのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ExcelVBAに関する質問 3 2023/02/17 10:47
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Visual Basic(VBA) VBAが止まります。 2 2022/09/02 14:02
- Visual Basic(VBA) このVBAでExcelアプリケーションを作成は必要ですか? 3 2023/07/19 21:13
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
- Excel(エクセル) フォルダ内のワードファイルをPDFに一括変換するVBA 3 2023/06/09 16:51
- Visual Basic(VBA) 貼り付けた値が消えていく 以下はソースファイルの2番目のシートのB6から最終行を取得 ターゲットファ 2 2023/07/27 12:23
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Visual Basic(VBA) 【前回の続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/16 16:44
- Visual Basic(VBA) Excel-VBAでのファイルの開き方 4 2023/02/14 11:01
このQ&Aを見た人はこんなQ&Aも見ています
-
「環境が人を育てる」って本当?環境によって人格や生き方は本当に変わるのか
環境が人生に与える影響は実際どれほどのものなのか、専門家の田宮由美さんに伺った。
-
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
読み取り専用ファイルを上書き保存するには?
Visual Basic(VBA)
-
自分のExcelを読み取り専用で開くVBAは?
Excel(エクセル)
-
-
4
エクセルVBAで5行目からオートフィルタモードに設定したいたい
Excel(エクセル)
-
5
読み取り専用の確認ダイアログを表示しない方法
Excel(エクセル)
-
6
VBA(エクセル)で自動的にボタンをクリックさせるには
その他(プログラミング・Web制作)
-
7
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
8
ExcelのVBAでWordを読み取り専用で開いて、見たいページに自動で移動する方法を教えて頂きたい
Excel(エクセル)
-
9
Excelで更新日時と更新者を表示させる
Excel(エクセル)
-
10
エクセルでエラーが出て困っています。
Excel(エクセル)
-
11
VBAで既に開いている別アプリケーションのオブジェクトを得る
Visual Basic(VBA)
-
12
EXCEL VBA 指定したファイルが存在しない場合メッセージボックスを表示させる
Access(アクセス)
-
13
指定のWORKBOOKを前面表示する方法(エクセル:VBA)
Excel(エクセル)
-
14
VBAで変数に関数式の結果をセットする場合
Excel(エクセル)
-
15
エクセルマクロで、別のブックが開いているかを判定したいのですが。
その他(Microsoft Office)
-
16
Excel vbaで特定の文字以外が入っている時、メッセージを表示させるプログラムについて
Visual Basic(VBA)
-
17
【ExcelVBA】マクロの入ったシートをコピーしても新しいシート内でマクロを動作させるには?
Excel(エクセル)
-
18
ExcelVBAで今開いているユーザ情報を取得できますか?
Visual Basic(VBA)
-
19
【vba】指定範囲の中に任意の文字があるときの条件分岐
Excel(エクセル)
-
20
Excel vbaで別ブックのコマンドボタンをクリック
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルVBAが途中で止まります
-
VBA シートをコピーする際に Co...
-
エクセルのVBAコードについて教...
-
ワイルドカード「*」を使うとう...
-
エクセルのマクロについて教え...
-
エクセルのマクロについて教え...
-
VBA コードを実行すると画面が...
-
Excel-VBAでのファイルの開き方
-
【ExcelVBA】zip圧縮されたCSV...
-
VBAで別ブックのシートを指定し...
-
【ExcelVBA】インデックスが有...
-
Excel2007VBAファイルの表示に...
-
VBA 実行時エラー 2147024893
-
VBSでExcelのオープン確認
-
別ブックからの取込み保存エラー
-
VBA 別ブックからコピペしたい...
-
Workbooks(workbooks.count)に...
-
転記先VBA 一致しているセルが...
-
複数ファイルのシートを1つにま...
-
Excelのマクロコードについて教...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA シートをコピーする際に Co...
-
エクセルVBAが途中で止まります
-
ワイルドカード「*」を使うとう...
-
別ブックをダイアログボックス...
-
VBAで別ブックのシートを指定し...
-
Excelのマクロについて教えてく...
-
VBA 別ブックからコピペしたい...
-
Excelのマクロについて教えてく...
-
vbaでvbaProjectのパスワード解...
-
VBA コードを実行すると画面が...
-
【マクロ】アクティブセルにブ...
-
Excelのマクロについて教えてく...
-
VBAで別のブックにシートをコピ...
-
VBS Bookを閉じるコード
-
Excelのマクロについて教えてく...
-
【ExcelVBA】zip圧縮されたCSV...
-
【ExcelVBA】インデックスが有...
-
ACCESSVBA からExcelの他ブック...
-
vbaで他のブックに転記したい。...
-
【マクロ】違うフォルダにある...
おすすめ情報