• 締切済み

VB6からのエクセルの印刷品質の設定方法について

エクセルの印刷品質が空白だったりすると問題がでるケースがあるので、 強制的に 600 などの印刷品質の設定をVBでエクセルを読み込んだ後に 行いたいのですが、うまくいきません。 Dim objBook As Workbook Set objBook = .Workbooks.Open(strFilePath, False, True) objBook.印刷品質設定  ←うまく印刷品質の設定をできるコマンドがわからない? obj.book印刷実施

みんなの回答

回答No.1

空白になるってことが経験ないのでイマイチわかりません。 印刷品質の設定は ActiveSheet.PageSetup.PrintQuality = 1200 てな感じですが、この数値は対象プリンタのドライバに依存しますから、使用者のプリンタが多種多様で不明な場合は危険ですね。 「現在使っているプリンタの最高品質」 というのならサンプルコードが過去質問にありました。 http://okwave.jp/qa/q1461631.html

関連するQ&A

  • VB6からExcel出力し、ブックを閉じたとき異常終了

    Win98 FirstEdition VB6 SP3 Excel97 SR1 上記の環境において、下記のソースのように、VBからExcelを起動してデータを出力した際、Excelのブックを閉じると、「保存しますか?」の「はい」「いいえ」関わらず、あるいはブックをセーブした後閉じても、Excelが異常終了してしまいます。 ブックではなく、Excel自体を閉じた場合は全く問題ありません。 どなたか対処法をご存じな方いらっしゃいませんか? Dim objXls As Object Dim objBook As Object Dim objSheet As Object Set objXls = CreateObject("Excel.Application") objXls.Workbooks.Add objXls.Visible = False Set objBook = objXls.ActiveWorkbook Set objSheet = objBook.Worksheets(1) (中略) objXls.Visible = True

  • VB2005でExcelのシートをコピー

    VB2005Expressで開発をしています。 Excelのシートをコピーして同じbookに追加をしたいと思っています。 下記でまずExcelを使用できるようにして  Dim xlApp As New Excel.Application  Dim xlBooks As Excel.Workbooks = xlApp.Workbooks  Dim xlBook As Excel.Workbook = xlBooks.Add '新規のファイルを開く  Dim xlSheets As Excel.Sheets = xlBook.Worksheets  Dim xlSheet As Excel.Worksheet = xlSheets.Item(1)  xlApp.Visible = True 下記で追加できると思うのですが、()内にセットするパラメータが わかりません・・・  xlBook.Worksheets.Copy() どなたかご存知の方がいらっしゃいましたら教えて下さい。 よろしくお願いします。

  • vb→access コーディングエラーについて

    <環境>access2007 vbコーディングした以下のコードをaccessに移行しているのですが、宣言で"Excel.~"となっているところでコンパイルエラーとなります。 (エラー:ユーザー定義型は定義されていません。) なので、全てObject型に変えたのですが、 (1)objBook.Names.Countで件数が取れないし、 (2)For Each objName In objBook.Namesで名前も取れません。 accessで動くようにどう直せばいいのでしょうか? よろしくお願いします。 <vbコード> Dim XLAPP As Excel.Application →Objectに変更 Dim objBook As Excel.Workbook →Objectに変更 Dim objName As Excel.Name →Objectに変更 Dim objTable As Excel.Range →Objectに変更 Dim objRange As Excel.Range →Objectに変更 Dim objColumn As Excel.Range →Objectに変更 Dim objRow As Excel.Range →Objectに変更 Dim i As Integer Dim lngCountSheet As Long Set XLAPP = CreateObject("Excel.Application") Set objBook = XLAPP.Workbooks.Open(FileName) objBook.Application.DisplayAlerts = False lngCountSheet = objBook.Names.Count (1)←ここ For Each objName In objBook.Names (2)←ここ Set objTable = objName.RefersToRange With objTable For i = 1 To .Columns.Count Set objColumn = .Columns(i) objColumn.HorizontalAlignment = XlHAlign.xlHAlignLeft Set objColumn = Nothing Next i '先頭行の書式設定をします Set objRow = .Rows(1) objRow.Interior.Color = RGB(192, 192, 192) ' .Range("A2").Activate '' ActiveWindow.FreezePanes = True ' XLAPP.ActiveWindow.FreezePanes = True End With Next XLAPP.Quit

  • VBからEXCELの起動方法

    はじめまして、さっそく質問ですが、 VBからエクセルを起動(ブックを開いている)しているのですが、以下の場合、マクロの登録の確認画面が開いてしまいます。マクロの確認画面を開かずエクセルを開く方法を教えて下さい。 Dim xlBook As Excel.Workbook Set xlBook = GetObject(strPathName) xlBook.Application.Visible = True xlBook.Windows(1).Visible = True

  • vb.netからエクセルファイルを開きたいのですが

    vb.netからエクセルファイルを開きたいのですが、 オフィス2010をインストールしてから動作しなくなりました。 ------------------------------------------------------------------------ Imports Microsoft.Office.Interop Sub ExcelOpen() Dim ExcApp As Excel.Application Dim book As Excel.Workbook Dim MyPath As String MyPath = "C:\Excel.xlsm" ExcApp = CreateObject("Excel.Application") ExcApp.Visible = True book = ExcApp.Workbooks.Open(MyPath) ExcApp = Nothing End Sub ------------------------------------------------------------------------ これで2007の時は起動してたのですが、2010だとダメです。 Microsoft Excel 14.0 Object Libraryに参照設定しています。 実行すると、 ExcApp.Visible = True の部分で サーバーによって例外が返されました。 (HRESULT からの例外: 0x80010105 (RPC_E_SERVERFAULT)) となります。 どうすればいいでしょうか?ご教授よろしくお願いします。

  • エクセル印刷品質の初期設定について

    エクセル(2002)で新しいブックを作るときには2つの方法があります。 1つは、エクセルのプログラムを立ち上げてBook1を作る方法で、もう一つは右クリックから新規作成を選んで、エクセルワークシートを選び、できたアイコンを開く方法。 さて、ここで、それぞれのブックのページ設定の中にある印刷品質を見てみると、1つ目の方法で作ったブックの印刷品質の解像度は600dpiになり、2つ目の方法で作ったブックの解像度は300dpiになっています。これはどうしてでしょうか。 どの方法でブックを作成しても同じ数値になるようにはできないものでしょうか。プリンタの標準は600dpiです。 よろしくお願いします。

  • VisualBaic2005でExcelファイルを読む方法

    Dim oExl As Excel.Application Dim WorkBookName As Excel.Workbook Dim Open_WorkSheet_Name As Excel.Worksheet oExl = CreateObject("Excel.Application") WorkBookName = oExl.Workbooks.Open("d:\book011.xls", , False) この時点でExcelのファイルが開きません。 また、oExl.Visible = True を実行するとExcel自体は開くのですが、ファイルのオープンは できません。また、終了時に oExl.Workbooks.Close() oExl = Nothingを実行すると Excel自体は閉じるのですが、プロセスは残りまます。 VB2005からExcelファイルを読む方法とクローズ処理の方法を 教えてください。よろしくお願いします。

  • VB6.0でEXCELにシートを追加したい

    初心者なので、説明がつたないところ、用語の使い方が間違っいるところがあるかと思いますが、今後のためにバシバシ指導お願いします。m(_ _)m VBにてEXCELシートを作成し、それを既存ファイルのシートに追加し、保存したいと考えています。 ・既存ファイルがなけれが新規作成 ・既存ファイルに同名のシートがあれば上書きするか、シ ート名を変更するか聞く 私が考えた流れは、 1.既存ファイルを開く 2.新しいシートを追加する 3.シートの名前をつける 4.既に同名シートがあれば上書きの有無を聞く 5.VBで作ったEXCELシートを既存ファイルのシートにコピー 6.既存ファイルを更新 7.EXCELを閉じる です。 まず、既存シートはコモンダイアログで探し、追加したい既存シートを開くところまではできました。 ただ、 シートを追加しようとすると文字が赤くなって怒られました。 いろいろ調べた結果の文章なので、どうしてここで赤くなるのかが解読できません。 Dim objBook2 As Excel.Workbook Dim objSheet2 As Excel.Worksheet Set objBook2 = objExcel.Workbooks.Open(CDl.FileName) objBook2 .Visible = True Set objSheet2 = objBook2.Worksheets(1) Sheets.Add(after:=Worksheets(Worksheets.Count)) ↑ここでだめでした。 一気にコピーしたほうがいいのかとも思い、下記を記入しましがだめでした。 objSheet.Copy After:=CDl.FileName.Sheets(CDl.FileName.Sheets.Count) 長々とかきましたが、どなたかEXCELシートを追加する記述方法を教えてください。 よろしくお願いします。

  • VBで既存エクセルシートを新規ブックにコピー

    VB6,Excel2003です。 既存のエクセルシートを新規ブックにコピーする プログラムを作成してみましたが タスクバーに新規ブックのタスクバーボタンが2つできてしまいます。 どこが原因か教えてください。よろしくお願いします。 Private Sub Command1_Click() Dim xlsApp As Excel.Application Dim xlsBookTemp As Excel.Workbook 'コピー元ブック Dim xlsBookCopy As Excel.Workbook 'コピー先ブック Dim xlsSheetTemp As Excel.Worksheet 'コピー元シート Dim xlsSheetCopy As Excel.Worksheet 'コピー先シート Set xlsApp = CreateObject("Excel.Application") Set xlsBookTemp = xlsApp.Workbooks.Open("C:\Temp.xls") Set xlsSheetTemp = xlsBookTemp.Sheets(1) Set xlsBookCopy = xlsApp.Workbooks.Add Set xlsSheetCopy = xlsBookCopy.Sheets(1) xlsApp.Visible = True 'コピー元のSheet1を新規ブックにコピーする xlsSheetTemp.Copy Before:=xlsSheetCopy 'コピー元のブックは閉じる xlsBookTemp.Close '///新規ブックの編集処理/// Set xlsSheetTemp = Nothing Set xlsBookTemp = Nothing Set xlsSheetCopy = Nothing Set xlsBookCopy = Nothing Set xlsApp = Nothing End Sub

  • VB.NET Excelの解放

    Excel出力の解放について質問です。 下記URLを参考に作成しましたが、出力をし終えたときにプロセスを見るとExcelの解放がされません。 http://hanatyan.sakura.ne.jp/dotnet/Excel01.htm 助言をもらえないでしょうか? With SaveFileDialog1 .FileName = savefilename If .ShowDialog() = Windows.Forms.DialogResult.OK Then wstrPath = .FileName() If Func_Excelチェック(wstrPath) = False Then Exit Function End If End If End With Dim excel As New Excel.Application Dim xlbooks As Excel.Workbooks = excel.Workbooks Dim xlbook As Excel.Workbook = xlbooks.Add Dim xlsheets As Excel.Sheets = xlbook.Worksheets Dim xlsheet As Excel.Worksheet = xlsheets.Item(1) Dim xlCells As Excel.Range Dim xlRange1 As Excel.Range xlCells = xlsheet.Cells Dim i As Integer = 1 作成データテーブルに接続 xlRange1 = xlCells(1, 1) xlRange1.Value = "工場番号" MRComObject(xlRange1, True) While sqlReader.Read xlRange1 = xlCells(i + 1, 1) xlRange1(xlCells(i + 1, 1)).Select() xlRange1.Value = sqlReader("入力_工場番号") MRComObject(xlRange1, True) i += 1 End While excel.DisplayAlerts = False xlsheet.SaveAs(wstrPath) 'Select Case Val(excel.Version) 'Case 9 'xlbook.SaveAs(Filename:=wstrPath) 'Case 12 'xlbook.SaveAs(Filename:=wstrPath, FileFormat:=56) 'End Select 'MRComObject(xlsheet, True) excel.DisplayAlerts = True MRComObject(xlsheet)'xlSheet の解放 MRComObject(xlsheets)'xlSheets の解放 xlbook.Close()'xlBook を閉じる MRComObject(xlbook)'xlBook の解放 MRComObject(xlbooks)'xlBooks の解放 excel.Quit()'Excelを閉じる MRComObject(excel)'excel を解放 Private Function Func_Excelチェック(ByVal arg As String) As Boolean Dim excel As New Excel.Application Dim xlbooks As Excel.Workbooks = excel.Workbooks Dim xlbook As Excel.Workbook excel.Visible = False excel.Application.DisplayAlerts = False Try If System.IO.File.Exists(arg) = True Then xlbook = xlbooks.Open(arg) xlbook.SaveAs(arg, FileFormat:=42, CreateBackup:=False) MRComObject(xlbook, True) Return True Else Return True End If Catch ex As Exception MessageBox.Show("") Return False Finally xlbooks.Close() MRComObject(xlbooks, True) excel.Quit() MRComObject(excel, True) End Try End Function

専門家に質問してみよう