[Excel] This workbook cannot use any new font

Source: Internet
Author: User

Problem:

In the Excel editing status, everything works normally, but you can move or copy a worksheet in this workbook (for example, after you select a character area, click "font color" in the "format" toolbar "), the following message is displayed: "This workbook cannot use any new font." You cannot click it many times. The same is prompted when you repeat the information on another computer.

Cause
This problem occurs because of the "auto scaling" setting. When you add a chart to a workbook, the "auto scaling" setting is enabled by default. This setting causes the chart to use two or more fonts, not one. When this setting is enabled, the font limit of the workbook may be reached when multiple charts are added to the workbook. For Microsoft Excel 2000 and later versions, the maximum number of fonts is 512. If you manually add charts or copy and paste existing charts, the font limit of the workbook may be reached.

Solution:

Disable auto font scaling for existing charts

Method 1:Disable auto scaling for each chart"
1. Select a chart.
2. On the Format menu, click the chart area.
3. Click the font tab.
4. Click to clear the auto scaling check box.
5. Click OK.
6. Repeat these steps for each chart in the workbook.

Method 2:Disable auto scaling for all existing charts in the workbook programmatically"
To disable automatic scaling for all existing charts in the workbook programmatically, perform the following steps: 1. Start Excel and open the file that causes the error message.
2. On the Tools menu, point to macro and click Visual Basic Editor (or press Alt + F11 ).
3. In the Visual Basic Editor, select "module" from the "insert" menu ".
4. type or paste the following code in the module: 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. Click the Save button to save the macro you just wrote. Return to the workbook page, click "tools/macros", and select autoscale_off (that is, the name of the macro you just wrote ), click execute. Everything is done.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.