本工作簿不能再使用其它新字体

 

出现问题:
OFFICES版本为:2003   
编辑状态下一切正常,但在预览状态下就提示:本工作簿不能再使用其它新字体,而且点也很多次也确认不完。
 
原因  
  出现此问题的原因在于“自动缩放”设置。向工作簿添加图表时,默认情况下会启用“自动缩放”设置。此设置导致图表使用两种或多种字体,而不是一种。在启用了此设置的情况下向工作簿添加多个图表时,可能会达到工作簿的字体限制。对于   Microsoft   Excel   2000   和更高版本,字体的最大数目为   512。如果手动添加图表或复制和粘贴现有图表,可能会达到工作簿的字体限制。下面是一个复制现有图表的示例:•   在工作表中创建图表对象。    
  •   在该工作表中复制和粘贴此图表对象十次或更多次。    
  •   然后在同一工作簿中复制该工作表多次。     
   
解决方案  
  存在注册表项可以用来防止新图表的自动字体缩放。要修复现有图表,请使用“禁用现有图表中的自动字体缩放”一节中所列的方法之一。  
    回到顶端    
   
  阻止新图表的自动字体缩放  
  可以通过设置注册表项对所有新图表禁用自动字体缩放,以防止工作簿超出允许的字体的最大数目。  
  要禁用“自动缩放”设置,请执行下列步骤:警告:注册表编辑器或其他方法使用不当可能导致严重问题。这些问题可能需要重新安装操作系统。Microsoft   不能保证可以解决这些问题。修改注册表需要您自担风险。  
  注意:因为   Microsoft   Windows   存在多个版本,所以在您的计算机上执行的步骤可能与下面介绍的步骤有所不同。如果是这样,请参阅您的产品文档来完成这些步骤。1.   退出所有正在运行的程序。    
  2.   单击“开始”按钮,然后单击“运行”。    
  3.   在“打开”框中,键入   regedit,然后单击“确定”。    
  4.   根据您的   Excel   版本,转到以下注册表子项(文件夹):  
  Excel   2003  
  HKEY_CURRENT_USER/Software/Microsoft/Office/11.0/Excel/Options   
  Excel   2002  
  HKEY_CURRENT_USER/Software/Microsoft/Office/10.0/Excel/Options   
  Excel   2000  
  HKEY_CURRENT_USER/Software/Microsoft/Office/9.0/Excel/Options  
     
  5.   指向“编辑”菜单上的“新建”,然后单击“DWORD   值”。键入   AutoChartFontScaling,然后按   Enter   键。    
  6.   单击“编辑”菜单上的“修改”。在“数值数据”框中键入   0,然后单击“确定”。    
  7.   单击“文件”菜单上的“退出”以退出注册表编辑器。    
  添加了此注册表项后,在   Excel   中创建的所有新图表都将不会选中“自动缩放”设置。  
    回到顶端    
   
  禁用现有图表中的自动字体缩放  
  使用下列方法之一来禁用现有图表中的自动字体缩放。  
  方法   1:禁用每个图表中的“自动缩放”  
  1.   选择一个图表。    
  2.   在格式菜单上,单击图表区。    
  3.   单击字体选项卡。    
  4.   单击以清除自动缩放复选框。    
  5.   单击确定。    
  6.   为工作簿中的每个图表重复这些步骤。    
   
  方法   2:以编程方式禁用工作簿中所有现有图表的“自动缩放”  
  Microsoft   提供的编程示例只用于说明目的,不附带任何明示或默示的保证。这包括但不限于对适销性或特定用途适用性的默示保证。本文假定您熟悉所演示的编程语言和用于创建和调试过程的工具。Microsoft   的支持工程师可以帮助解释某个特定过程的功能,但是他们不会修改这些示例以提供额外的功能或构建过程以满足您的特殊需求。   要以编程方式禁用工作簿中所有现有图表的“自动缩放”,请执行下列步骤:1.   启动   Excel   并打开导致错误信息的文件。    
  2.   在“工具”菜单上,指向“宏”,然后单击“Visual   Basic   编辑器”(或按   Alt+F11)。    
  3.   在   Visual   Basic   编辑器中,从“插入”菜单中选择“模块”。    
  4.   在模块中键入或粘贴以下代码:
Sub   AutoScale_Off()   
Dim   ws   As   Worksheet,   co   As   ChartObject,   i   As   Integer   
     Dim   ch   As   Chart   
    For   Each   ws   In   ActiveWorkbook.Worksheets   
       '   Go   through   each   worksheet   in   the   workbook   
            For   Each   co   In   ws.ChartObjects   

   'In  each  chart  turn  the  Auto   Scale   font   feature   off   
     i   =   i   +   1   
   co.Chart.ChartArea.AutoScaleFont   =   False   
        Next   co   
   Next   ws   
  For   Each   ch   In   ActiveWorkbook.Charts   
    'Go   through   each   chart   in   the   workbook   
     ch.ChartArea.AutoScaleFont   =   False  
                  i   =   i   +   1  
          Next  
          MsgBox   i   &   "   charts   have   been   altered"  
          Application.DisplayAlerts   =   True  
  End   Sub  
     
  5.   单击函数“AutoScale_Off”的代码中的任意位置,然后单击“运行”菜单上的“运行子过程/用户窗体”。宏运行后,您应该能够插入图表,而不会出现错误。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值