XL97: "255 Characters in Cell" Error when Copying Worksheet (159729)



The information in this article applies to:

  • Microsoft Excel 97 for Windows

This article was previously published under Q159729

SYMPTOMS

When you copy a worksheet in Microsoft Excel 97, you may receive the following error message:
The sheet you are copying contains cells that have more than 255 characters in them. Copying an entire sheet truncates cells that contain more than 255 characters.

To avoid truncation, copy the cells of the source sheet to the destination (rather than copying the entire sheet).
Cells in the new worksheet are all truncated so that they contain no more than 255 characters.

CAUSE

This behavior occurs if one or both of the following conditions are true:

  • One or more cells in the worksheet contains a string of characters that exceeds 255 characters in length, for example: a string of 300 "x" characters or a very long sentence. -or-

  • One or more cells in the worksheet contains a formula whose length exceeds 255 characters, for example:
          =SUM(A1+A2+A3+...+A100)
    						
This behavior is by design of Microsoft Excel.

WORKAROUND

If you manually copy a worksheet and receive this error message, follow these steps to make the new worksheet identical to the original worksheet:

  1. In the error message dialog box, click OK.
  2. Switch to the original worksheet.
  3. Press CTRL+A or click the Select All button in the upper-left corner of the worksheet.
  4. On the Edit menu, click Copy.
  5. Activate the new worksheet and select cell A1.
  6. On the Edit menu, click Paste.
The new worksheet should now be identical to the original worksheet.

If cells in your worksheet are truncated when you use a Microsoft Visual Basic for Applications macro to copy a worksheet, you can modify the macro so that it copies the sheet successfully. The following sample subroutine demonstrates how you can do this.

Microsoft provides programming examples for illustration only, without warranty either expressed or implied, including, but not limited to, the implied warranties of merchantability and/or fitness for a particular purpose. This article assumes that you are familiar with the programming language being demonstrated and the tools used to create and debug procedures. Microsoft support professionals can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific needs. If you have limited programming experience, you may want to contact a Microsoft Certified Partner or the Microsoft fee-based consulting line at (800) 936-5200. For more information about Microsoft Certified Partners, please visit the following Microsoft Web site: For more information about the support options that are available and about how to contact Microsoft, visit the following Microsoft Web site:
    Sub Test()

        'Turn off screen updating while the macro runs.
        Application.ScreenUpdating = False

        'xSheet is the sheet we want to copy.
        Set xSheet = ActiveSheet

        'Copy the worksheet to the destination you want. Cells with more
        'than 255 characters will be truncated by this step.
        xSheet.Copy Before:=Sheets(xSheet.Index)

        'ySheet is the new worksheet.
        Set ySheet = ActiveSheet

        'Copy all of the cells on the original worksheet...
        xSheet.Range("A:IV").Copy

        '...activate the new worksheet...
        ySheet.Range("A1").Select

        '...and paste the copied cells. All cells in the new worksheet
        'now have the correct contents.
        ySheet.Paste

        'Clear out the clipboard and select cell A1.
        Application.CutCopyMode = False
        Range("A1").Select

    End Sub
				

MORE INFORMATION

If you use a Visual Basic macro to copy a worksheet, you do not receive the error message shown above. However, cells in your worksheet are still truncated to 255 characters.

Note that a short formula that returns a long string of characters does not cause this problem to occur. For example: the formula =REPT("x",400) returns a string of 400 "x" characters, but copying a sheet containing this formula does not cause the problem to occur.

Note also that this problem does not occur if you move a worksheet from one workbook to another, or if you move it within the same workbook. The problem only occurs when you copy a worksheet.

Modification Type:MinorLast Reviewed:10/10/2006
Keywords:kbdtacode kberrmsg kbprb KB159729