Vba 为什么跨Excel复制和粘贴图表会丢失格式?
我正在构建一个宏,它从一个excel复制图表并粘贴到另一个excel中。它以前工作过,但现在似乎丢失了图表x轴的日期格式。即使我复制图片,它仍然会丢失日期格式并显示“jan yy”而不是“jan 16”。我在荷兰工作,所以年份用“jj”表示,但两个excel文件都是美国格式,我的电脑也是 源图表:Vba 为什么跨Excel复制和粘贴图表会丢失格式?,vba,excel,charts,excel-charts,Vba,Excel,Charts,Excel Charts,我正在构建一个宏,它从一个excel复制图表并粘贴到另一个excel中。它以前工作过,但现在似乎丢失了图表x轴的日期格式。即使我复制图片,它仍然会丢失日期格式并显示“jan yy”而不是“jan 16”。我在荷兰工作,所以年份用“jj”表示,但两个excel文件都是美国格式,我的电脑也是 源图表: 输出图表: 我尝试了复制、复制图片(xlScreen或xlPrint)以及粘贴(粘贴、粘贴)的多种配置,但似乎都没有保留格式。如果我使用以下命令,则仅在宏第一次运行时有效: Sheets("Fac
输出图表:
我尝试了复制、复制图片(xlScreen或xlPrint)以及粘贴(粘贴、粘贴)的多种配置,但似乎都没有保留格式。如果我使用以下命令,则仅在宏第一次运行时有效:
Sheets("Factsheet").ChartObjects("Chart 8").Activate
ActiveChart.ChartArea.Copy
core.Sheets("Output").Paste
但与第一种方法不同,这无法使我粘贴到特定的单元格位置,而且我也不明白为什么第一次粘贴有效,而第二次粘贴无效。任何帮助或想法都将不胜感激
ActiveChart.SaveChartTemplate Filename:="Temp Chart"
ActiveChart.ChartArea.Copy
ActiveSheet.Sheets("YourSheetName").Paste
ActiveChart.ApplyChartTemplate "Temp Chart"
'这会在复制粘贴图表操作时恢复格式,也会在将图表分配到新的源区域时恢复格式(因为它也会丢失格式)为什么要移动图表?制作一个模板表,将图表组装并运行,然后粘贴新数据并保存。另存为…不幸的是,需要将图表与其他几个excel文件中的图表一起使用到另一个excel文件中,因此必须将其提取将所有图表放在一个文件中。。。根据……啊,我明白你的意思了,图表从更新的单独文件中提取数据。我可以用这些图表和它们的数据创建一个文件,但这将需要重复更新数据(或者构建一个宏来更新数据),但我希望有一个简单的解决方案。。。谢谢你的主意
ActiveChart.SaveChartTemplate Filename:="Temp Chart"
ActiveChart.ChartArea.Copy
ActiveSheet.Sheets("YourSheetName").Paste
ActiveChart.ApplyChartTemplate "Temp Chart"