工作表副本 - > Tahoma切换到Calibri

时间:2018-02-08 13:48:59

标签: excel

我在VBA中编写了一个Excel加载项。它将加载项文档中的工作表复制到活动文档(以及其他任务)。我正在使用Excel 2013.

最初,加载项是XLAM,但是当目标文档是XLS(工作表中的行数)时会引发错误。

所以我将加载项保存为XLA以避免该问题,并且适用于XLS和XLSX目标,EXCEPT用于演示:源XLA的文本格式为 Tahoma ,但更改到目标文件中的 Calibri 。目标文档是XLS或XLSX时会发生这种情况。

要复制的代码非常简单,我不会在复制后进行任何格式化:

Set shTb = ActiveWorkbook.ActiveSheet
ThisWorkbook.Sheets(templateSheetName).Copy after:=shTb
Set shBal = ActiveWorkbook.ActiveSheet

我当然可以写几行来在目标中应用正确的字体,但我想了解为什么会发生这种情况。任何的想法 ?

注意:写完这个问题后,我尝试手动复制,我也遇到同样的问题。

enter image description here

1 个答案:

答案 0 :(得分:0)

在原版中,如果它说Tahoma(身体),那意味着它并没有真正设置为Tahoma。相反,“(正文)”表示程序将应用文档的默认字体。因此,当您将其复制到新书时,它会使用该书的默认值。

要解决此问题,您需要:

  • 在复制之前将其更改为原始中的“Tahoma”

  • 复制后将其更改

或者

  • 将body的新书的默认值更改为Tahoma。