我不确定这是否可以在excel中使用,但是由于它具有许多强大的功能,我想可能有一种方法。
我有一张Excel表格,其中包含多行数据。
我有工作表2,该工作表基本上是该数据的可打印版本,但是它仅对应于一行数据。
有没有一种方法可以让我批量保存工作表2的PDF,但每行各不相同?
例如,A2,B2,C2,D2包含分散在工作表2不同部分的某些数据。我想填充它们并另存为PDF,然后我希望A3,B3,C3和D3重新填充字段&覆盖先前的声音并保存一个新名称的PDF(或只是连续的)。
有可能吗?
我对Access的VBA有一点经验,对Swift和其他编程语言也有一些经验,所以我了解一些基础知识。
答案 0 :(得分:1)
实际的解决方案将取决于您的数据如何分级,但是作为示例,请考虑以下数据。
在工作表2上,将打印区域设置为希望PDF包含的部分。
然后,此循环将为在工作表1的A列中找到的每个ID创建PDF。
Private Sub exportToPDFLoop()
Dim rng As Range
Dim c As Range
With ThisWorkbook.Sheets("Sheet1")
Set rng = Intersect(.Range("A:A"), .UsedRange)
End With
For Each c In rng
'Skip Row 1 (headers)
If c.Row > 1 Then
With ThisWorkbook.Sheets("Sheet2")
.Range("B1").Value = c.Value
.Calculate
.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
ThisWorkbook.Path & "\testfilename_" & CStr(c.Value) & ".pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True
End With
End If
Next c
End Sub