Excel.Tips.Net Welcome toExcel.Tips.Net

Helpful Links

Tips.Net Home
ExcelTips Home
Ask an Excel Question
Make a Comment

Tips.Net Store

ExcelTips FAQ
ExcelTips Premium

Learn Access Now
Free Printable Forms

Beauty Tips
Car Tips
Cleaning Tips
College Tips
Cooking Tips
Excel2007 Tips
ExcelTips
Family Tips
Gardening Tips
Health Tips
Home Tips
Legal Tips
Money Tips
Organizing Tips
Pest Tips
Pet Tips
Wedding Tips
Word2007 Tips
WordTips

Advertise on the
ExcelTips Site

Newest Tips

Converting to Octal

Filtering Columns for Unique Values

Printing Multiple Worksheets on a Single Page

Changing the Default Font

Creating a Drawing Object

Determining a Value of a Cell

Understanding Macros

 

Unlocking Charts

Summary: Objects within a workbook are often locked as a form of protection. Your macro, however, may have a need to work with some of those locked objects. You'll need the information in this tip so you can create the macro code necessary to unlock the objects. (This tip works with Microsoft Excel 97, Excel 2000, Excel 2002, and Excel 2003.)

A common task done in macros is to lock and unlock different cells and objects in a workbook. This is often done for protection reasons, so that things cannot be modified inadvertently by users. If you need to unlock the charts that are in your workbook, you can easily do so if you remember that even though charts can be considered drawing objects, you don't unlock them as drawing objects--you specifically unlock the chart object.

In addition, how you unlock a chart depends on whether it is a Chart sheet or a Chart object on a regular worksheet. The following code, named ChartUnProtect, provides an example of how to successfully unprotect both types of charts.

Sub ChartUnProtect()
    Dim wks As Worksheet
    Dim cht As Chart
    Dim chtObj As ChartObject
    Dim PW As String
    PW = "mypass"

    'Unprotect all Chart sheets
    For Each cht In ActiveWorkbook.Charts
        Sheets(cht.Name).Unprotect password:=PW
    Next

    'Unlock all Chart objects on each worksheet
    For Each wks In ActiveWorkbook.Worksheets
        wks.Unprotect password:=PW
        For Each chtObj In wks.ChartObjects
            wks.DrawingObjects(chtObj.Name).Locked = False
        Next
        wks.Protect password:=PW
    Next
End Sub

ExcelTips is your source for cost-effective Microsoft Excel training. This tip (2264) applies to Microsoft Excel versions: 97 | 2000 | 2002 | 2003

PivotTables Got You Perplexed? PivotTables for the Faint of Heart shows how you can start using Excel's PivotTable tool right away to spin your data into gold! You discover how easy it really is to crunch the numbers you need to crunch. Uncover the power of creating PivotTables, editing them, formatting them, customizing them, and much more.
 
Check out PivotTables for the Faint of Heart today!