2014-01-07 37 views
0

用于网站很多VBA问题解决,并没有问一个问题,但希望有人可以提供帮助。图像复制/粘贴货币的VBA图表

我使用此代码将Excel工作表图表复制到另一个工作簿作为图像。问题在于我的图表中有一个货币计量并在Y轴上显示'£',粘贴到其他工作簿的图表图像总是以美元'$'显示。

有没有办法强制我的图表复制英镑货币?

我的代码:

Windows(dsllng).Activate 
ActiveSheet.Shapes("Chart 8").CopyPicture Appearance:=xlScreen, Format:=xlPicture 
Windows(TdysFle).Activate 
Range("B11").Select 
Sheets("Ad-Selling Report Summary").Paste 

感谢,

阿什利

+0

我刚刚创建了一个样本数据和它的作品对我蛮好。任何机会我可以偷看你的工作簿? –

回答

0

我认为你必须避免Excel使用某种类型的本地格式的ticklabel的NumberFormat自动设置的。

此代码在复制图表之前将ticklabel numberformat设置为GBP,并在复制后将其设置为链接到单元格数据。

Windows(dsllng).Activate 
With ActiveSheet.ChartObjects("Chart 8") 
    .Chart.Axes(xlValue).TickLabels.NumberFormatLinked = False 
    .Chart.Axes(xlValue).TickLabels.NumberFormat = "#,##0.00 £" 
    .CopyPicture Appearance:=xlScreen, Format:=xlPicture 
    .Chart.Axes(xlValue).TickLabels.NumberFormatLinked = True 
End With 
Windows(TdysFle).Activate 
Range("B11").Select 
Sheets("Ad-Selling Report Summary").Paste 

应该解决您的问题

+0

非常感谢阿克塞尔 - 这是完美的。我只需要将“#,## 0.00£”更改为“£#,## 0.00”以适应其余的图表。谢谢! – 4sh