我正在使用以下组合:
Application.DocumentExport SaveFileName, pjPDF, FromDate:=EarliestStart-30, ToDate:=LFin+30
and
xlbook.activesheet.OLEObjects.Add(FileName:="C:\Macros\Target-" & t & ".pdf", Link:=False, _
DisplayAsIcon:=True, IconFileName:= _
"C:\windows\Installer\{AC76BA86-1033-FFFF-7760-0E0F06755100}\_PDFFile.ico", _
IconIndex:=0, IconLabel:="Target-" & t, Left:=1082, Top:=TOffset, Width:=5, Height:=5).Select
xlbook.activesheet.OLEObjects.Placement = 1 'Move and Size with cells
目的是在特定单元格的 Excel 工作表上放置一个图标。使用这些命令运行时,我得到一个方形图标,测量大约 50 x 50 点,并在文本上方显示 acrobat 符号,即“189.PDF,标识为上面的 IconLabel。我正在尝试将图标的大小调整为 8 x 18点所以它适合在单元格内,它测量 10 x 20 点。我不想也显示 Acrobat 图片,只显示 IconLabel 文本。
上面的 Application.DocumentExport 命令完全按照它拍摄的方式工作,将 pdf 源的副本保存为 pdf,即使有很多页。
OLEObjects.Add 命令有效,但不允许我调整图标大小,使其适合我想要放置它的 excel 单元格。
TOffset 是从 Excel 页面顶部到要放置图标的单元格顶部的点的总和。上面的 Width 和 Height 应该以磅为单位表示图标的大小值,但无论是否使用上面的 .OLEObjects.Placement 命令,它们都不起作用。
我尝试运行相同的 2 个命令,但在 OLEObjects 命令字符串中省略了 IconIndex 字段和值。这产生了所需尺寸的所需矩形框,但导致了一些内部 excel 问题,无法保存 excel 文件——由于 excel 文件严重损坏,该应用程序没有允许我保存文件。我将错误追溯到 OLEObjects 字符串中没有 IconIndex 字段名。IconIndex 显示为 OLEObjects.Add Microsoft 页面上的可选条目 如果我为 IconValue 分配除 0 以外的任何整数值,则图标创建为清晰但尺寸与 IconIndex:=0 时相同。
最终目标是获取保存的 PDF 并将保存 pdf 文件副本的图标放入 excel 工作表上的特定单元格中,该单元格的操作类似于按钮,并允许我在图标的标题中写入简短标识符。
最终结果是一个独立的工作簿,可以分发,还需要复制/粘贴应用程序创建的所有 pdf。
对于一些关于如何调整图标大小、使用按钮而不是 OLEOPbjects.add 等的线索,我将不胜感激。我尝试过超链接,但后来我有一个包含很多很多工作表的大型工作簿,每个工作簿都包含一个 PDF。我最终想要的是一个单一的工作表,我可以用它来在我创建的所有不同打印输出的图标中保存 PDF。
谢谢