Excel VBAmacros按电话号码在电子表格中打印URL

我所拥有的是一个excel电子表格,超文本链接到在线文档,我想根据需要打印一定范围的文档。 大部分时间需要打印整个文档,但有时候我们只需要打印某些页面,理想情况下,这个范围的页面也将被打印。

我有一个macros,有点做我以后的事情:

Option Explicit Sub PrintHyperlinkedPDFs() Dim PDFrng As Range, PDF As Range Dim AdobeReader As String, pdfLINK As String 'there is an extra space at the end of this string AdobeReader = "C:\Program Files\Adobe\Reader 11.0\Reader\AcroRd32.exe " Set PDFrng = Selection 'change this to whatever method you want for setting 'the range of PDF link cells to process and print For Each PDF In PDFrng If PDF.Hyperlinks.Count > 0 Then pdfLINK = PDF.Hyperlinks(1).Address Shell """" & AdobeReader & """/n /t """ & pdfLINK & """" Next PDF End Sub 

您突出显示包含要打印的链接的单元格,然后发送其中的一些(如果它的四个以上的文档冻结,并不全部发送)。

理想情况下,我想设置一些button来打印这些文档的预定义组合,但我不完全是VBA专业人员,因此这可能超出了我的技能范围。

任何帮助将非常感激。

您可以直接在工作表上添加一个button,并分配已存储在工作表中的macrosSetupBtn:

 Sub SetupBtn() ActiveSheet.Range("B2,B4").Select PrintHyperlinkedPDFs End Sub 

这个macros使用你的Sub,在Sub之前select你想要的单元格。
创build单元格的组合,创build组合的打印。
单元格的顺序是打印的顺序。 如果你想要一个文档的两个副本(例如页面的分隔符),写下类似的东西:

  ActiveSheet.Range("B2,B4,B2").Select 

这很奇怪,但打印3文件与2细胞select…