Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 将NanoCAD DWG文件打印为PDF_Excel_Vba_Pdf_Cad_Dwg - Fatal编程技术网

Excel 将NanoCAD DWG文件打印为PDF

Excel 将NanoCAD DWG文件打印为PDF,excel,vba,pdf,cad,dwg,Excel,Vba,Pdf,Cad,Dwg,我想将DWG文件从Excel VBA打印到PDF。AutoCAD有很多帮助,但对于NanoCAD几乎没有帮助。我尝试使用等效函数,但结果是错误的 关于我所探索的一些背景知识 打印在NanoCAd中创建的配置DWG2PDF.pc3和以下代码: Dim NCAD As nanocad.Application Dim ndg As nanocad.Document Dim pth As String Dim result As String pth = ThisWorkbook.Path

我想将DWG文件从Excel VBA打印到PDF。AutoCAD有很多帮助,但对于NanoCAD几乎没有帮助。我尝试使用等效函数,但结果是错误的

关于我所探索的一些背景知识

  • 打印在NanoCAd中创建的配置DWG2PDF.pc3和以下代码:

     Dim NCAD As nanocad.Application
     Dim ndg As nanocad.Document
     Dim pth As String
     Dim result As String  
     pth = ThisWorkbook.Path
     Set NCAD = GetObject("", "nanoCAD.Application")
     NCAD.Visible = True
     Set ndg = NCAD.Documents.Open(pth & "\typicals\Title-OPA01.dwg")
     ndg.ActiveLayout.ConfigName = "DWG2PDF.pc3"
     result = ndg.Plot.PlotToFile(pth & "\Output\op.pdf")
    
  • 我使用了为autoCAD professional版本而不是LT指定的命令。在autoCAD LT中是否有可以适应NanoCAD的变通方法

  • 通过Acrobat的打印功能进行第二次试用,windows调用该功能以打印为PDF。从Internet获得有关调用Shell命令的帮助。我使用了一些代码,如下所示

    调用Shell(“C:\Program Files\Adobe\Acrobat 8.0\Acrobat\Acrobat.exe/p/h”&pth&“\typicals\Title-OPA01.dwg”)


  • 注意:我在VBA项目中引用了NanoCAD、Acrobat的类型库。

    请使用这一工作:

    Public Sub test()
    Dim NCAD
    Dim ndg
    Dim pth As String
    Dim result As String
    
    pth = "C:\Users\Cci\Desktop\TMP\"
    Set NCAD = GetObject("", "nanoCAD.Application")
    NCAD.Visible = True
    
    Set ndg = NCAD.Documents.Open(pth & "BASE CAVALLETTO.dwg")
    
    'setup plot
        ndg.ActiveLayout.RefreshPlotDeviceInfo
        ndg.ActiveLayout.ConfigName = "doPDF 10"
        ndg.ActiveLayout.PlotRotation = ac0degrees
        ndg.ActiveLayout.StyleSheet = "monochrome.ctb"
        ndg.ActiveLayout.PlotWithPlotStyles = True
        ndg.ActiveLayout.PlotViewportBorders = False
        ndg.ActiveLayout.PlotViewportsFirst = True
        ndg.ActiveLayout.CanonicalMediaName = "A3"
        ndg.ActiveLayout.PaperUnits = acMillimeters
        ndg.ActiveLayout.StandardScale = acScaleToFit
        ndg.ActiveLayout.ShowPlotStyles = False
        ndg.ActiveLayout.CenterPlot = True
        ndg.Plot.NumberOfCopies = 1
    
    result = ndg.Plot.PlotToDevice
    
    End Sub
    
    DOPDF10是一个模拟打印机并生成pdf文件的免费程序

    尝试根据您的需要调整此基本代码
    再见

    进一步上网,我有一个小问题。有人能帮助我使用AutoCAD LT(当然是Excel)从DWG打印PDF格式的代码吗?我已经很久没有重新讨论我的问题了。谢谢你的回答:)不客气;)