2016-02-26 77 views
0

好的。我现在一直在大声嘀咕我的大脑,并在互联网上滚动更长时间,似乎无法解决如何将工作簿中的特定工作表保存为仅具有值的新工作簿。 快速回到故事,我有一个工作簿,其中一个是一个报表生成器。 “标准报告”工作表由涉及工作簿中其他工作表中单元格的图表和表格组成。我想创建一个宏,它将“标准报告”工作表保存为只有当前值的自己的工作簿。将具体工作表另存为具有数值的新工作簿

这甚至可能吗?如果有人可以帮我一把,或者给我一些非常感谢的有用链接。

回答

0

我建议将工作表复制到新的工作簿中,打破该工作簿中的链接,然后保存。考虑下面的内容(未经测试,仅旨在让您指向正确的方向)。

Sub StaticCharts() 

Dim sh As Worksheet 
Dim wb As Workbook 
Dim cht As ChartObject 
Dim scoll As Series 


'Assumes the active worksheet contains the charts; change below to an absolute reference if possible 
Set sh = ActiveSheet 

Set wb = Workbooks.Add 'Adds a new workbook 

sh.Copy Before:=wb.Sheets(1) 'Copies sheet with charts to new workbook 

'Delete empty sheets in destination workbook 
On Error Resume Next 
wb.Sheets(4).Delete 
wb.Sheets(3).Delete 
wb.Sheets(2).Delete 
On Error GoTo 0 

'Break links in all charts 
For Each cht In sht.ChartObjects 
    For Each scoll In cht.Chart.SeriesCollection 
     scoll.Values = scoll.Values 
     scoll.XValues = scoll.XValues 
     scoll.Name = scoll.Name 
    Next scoll 
Next cht 

End Sub 

看到这个(旧)本文的详细信息:https://support.microsoft.com/en-us/kb/213443

其他资源:

+0

感谢您的编码! @尼克,这是一个很好的起点。 “所有图表中的断开链接”不是100%的工作,但我可以在这方面努力。 –

+0

真棒,很高兴它帮助! –

相关问题