사용자가 기술 도면 번호 세트를 입력하고 그로부터 패킷을 생성 할 수있게 해주는 vba 코드를 설계하고 있습니다. AutoCAD 파일을 다룰 때 문제가 발생했습니다. 우리 회사는 AutoCAD LT를 가지고 있기 때문에 API를 사용할 수 없기 때문에 adobe의 PDFMaker API를 사용하여 파일을 pdf로 직접 변환합니다. 불행히도 pdfMaker의 설정은 다소 제한되어 있으므로 출력 된 pdf 패킷을 구문 분석하여 흑백으로 인쇄해야합니다. 저는 현재 패킷을 열고 필요한 페이지를 인쇄하는 서브 루틴을 가지고 있지만, 특별히 acrobat을 열고 고급 설정에서 "흑백"구성을 선택하면 흑백 만 인쇄됩니다. 이 색상 구성을 설정하고 크기 옵션을 맞추기 위해 명령을 보낼 수있는 방법이 있습니까 (저는 이것이 자바 스크립트에 있다고 생각합니까?)? 여기 내 코드가있다. 엑셀 vba를 통해 Acrobat XI 프린터 설정을 어떻게 설정합니까?
Public xlBook As Workbook
Public xlSheet As Worksheet
Public LastRow As Integer
Public ItemNumber As String
Public Vin5 As String
Public Vin As String
Public FullPath As String
Sub PdfFormat()
Dim strMakeFile As String
Dim LastRow As Integer
Set xlBook = ActiveWorkbook
Set xlSheet = xlBook.Sheets(1)
ItemNumber = Range("E1")
Vin5 = Range("F1")
Vin = ItemNumber & "0" & Vin5
FullPath = "\\eastfile\Departments\Engineering\MACROS\New Packet Output\" & Vin & "\"
strMakeFile = FullPath & Vin & ".pdf"
LastRow = Range("A" & xlSheet.Rows.Count).End(-4162).Row
Dim AcroExchApp As New Acrobat.AcroApp
Dim AcroExchAVDoc As New Acrobat.AcroAVDoc
Dim AcroExchPDDoc As Acrobat.AcroPDDoc
Dim OpenError As Boolean
Dim PrintError As Boolean
OpenError = AcroExchAVDoc.Open(strMakeFile, "")
!!!!!CODE FOR PRINTER SETTINGS HERE!!!!!
PrintError = AcroExchAVDoc.PrintPagesSilentEx(0, 5, 3, 1, 1, 0, 0, 0, -5)
Debug.Print "Open Error: " & Not (OpenError)
Debug.Print "Print Error: " & Not (PrintError)
Debug.Print Vin
AcroExchApp.CloseAllDocs
End Sub
는 시간 내 주셔서 감사
이것은 일했다! 도움에 감사드립니다. – FFS88