- ベストアンサー
EXCELの印刷プレビューについて
- VC6でEXCELオートメーションを使用してEXCELシートを操作していますが、複数のシートを持つブックの場合、アクティブなシートしか印刷プレビューできません。
- ブック全体の印刷プレビューを行いたい場合は、方法がわかりません。
- PrintOutメソッドも試してみましたが、引数がわかりませんでした。VC6とEXCEL2000を使用しています。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
Cは門外漢なので、マクロの記述で失礼します。 Dim i as Integer For i = 1 to ThisWorkBook.Sheets.Count ThisWorkBook.Sheets(i).Select False Next で、全シートが選択できます。
その他の回答 (3)
- YukiHanabi
- ベストアンサー率46% (6/13)
ファイル名を指定してみてください。 細かいことは、Yahooの日本のサイトで DirectX VC の順で検索すると同ネタを扱っているサイトがみつかりますよ。
お礼
回答どうもありがとうございます。 検索の仕方がよくわからず、目的のとこにたどり着けませんでした。 検索結果のリンク張っていただくと助かります。
- e10go
- ベストアンサー率38% (47/122)
No.1のe10goです。 すみません。マクロでなく、VCでしたね。 VCは、私の専門外ですが、下のマクロ(VBA)からVCへのコード変換はできませんか。 無責任な言い方で、すみませんが。
お礼
ご回答ありがとうございます。 申し訳ございません、No1の方法は試しました。 EXCELシートをテンプレートにしたいため、マクロは使用できないのです。 マクロのコードをVCに変換できれば良いのですが Sheetをグループ化する部分が今ひとつコードに落とせないのです。 これのコードが変換できればよいのですが
- e10go
- ベストアンサー率38% (47/122)
マクロを使わなくてもできますよ。 「Ctrl」キーを押しながらアクティブシート以外のシートタブをクリックすれば、そのシートも選択状態になります。 その方法でブック内のシートを全て選択して、そのまま、印刷プレビューを見れば良いです。 なお、簡単にブック内のシートを全て選択するには、一番左(または右)のシートをアクティブにして、「Shift」キーを押しながら一番右(または左)のシートシートタブをクリックすれば良いです。 なお、これらの作業を「新しいマクロの記録」の後に行えば、マクロができます。 以下がその例です。(Sheet3がアクティブ状態から、全てのシートを選択した) Sub Macro1() ' Macro1 Macro ' マクロ記録日 : 2005/11/24 ユーザー名 : Sheets(Array("Sheet1", "Sheet2", "Sheet3", "Sheet4", "Sheet5")).Select Sheets("Sheet3").Activate ActiveWindow.SelectedSheets.PrintPreview End Sub
お礼
シートの選択は参考にさせていただきました。 以下のコードにて解決しました。 pBook->Worksheets->Select(); ←この1行を追加 pBook->PrintPreview(); お返事いただいた方どうもありがとうございました。