我想将 Excel 工作簿中的特定工作表打印到单个打印输出中。我的工作簿中有其他不应打印的工作表。
要打印的第一个工作表的名称将是不变的(“配方”)。要打印的其他工作表的名称会有所不同(它们都将具有前缀“Pie”和不同的后缀)。要打印的纸张数量因项目而异。
例如,
在项目 #1 中,工作簿将包括以下工作表:“食谱”、“派 - 苹果”、“派 - 南瓜”、“成分”和“工具”。
在项目 #2 中,工作簿将包括以下工作表:“食谱”、“馅饼 - 蛋羹”、“馅饼 - 苹果”、“馅饼 - 酸橙”、“馅饼 - 蓝莓”、“配料”和“工具”。
我想将“食谱”工作表和以“派”开头的每个工作表打印到单个打印输出中。以下代码允许我在清除其余工作表的同时统一所需的工作表:
Sub PrintArrayOfWorksheets()
Dim PrintCollection
PrintCollection = Array("Recipe", "Pie - Apple", "Pie - Pumpkin")
ThisWorkbook.Worksheets(PrintCollection).PrintOut
End Sub
此代码有效;但是,它需要我手动输入每个项目的数组元素。请推荐一种自动更新数组以包含满足上述条件的工作表的方法。或者,请完全推荐其他方法。
我尝试了几个不同的不成功的想法,如果需要,我可以分享。
亲切的问候,
托尼