Microsoft KB Archive/157568

= SaveAs Method for Worksheet Object Doesn't Save Single Ply =

Article ID: 157568

Article Last Modified on 10/11/2006

-

APPLIES TO


 * Microsoft Excel 97 Standard Edition
 * Microsoft Excel 95 Standard Edition
 * Microsoft Excel 5.0 Standard Edition
 * Microsoft Excel 98 for Macintosh

-



This article was previously published under Q157568





SYMPTOMS
The "SaveAs Method" topic in the Visual Basic Help file indicates that you can use the SaveAs method with a Worksheet object to save a single worksheet in the workbook as an individual file. However, if you use the following syntax:

.SaveAs filename:=

where  is the name of the worksheet you want to save, and  is the path and name for the file you are saving, the entire workbook may be saved instead of the worksheet indicated by .



CAUSE
This behavior occurs when you fail to specify a file format that saves only a single worksheet in the FileFormat argument for the SaveAs method.



RESOLUTION
Microsoft provides programming examples for illustration only, without warranty either expressed or implied. This includes, but is not limited to, the implied warranties of merchantability or fitness for a particular purpose. This article assumes that you are familiar with the programming language that is being demonstrated and with the tools that are used to create and to debug procedures. Microsoft support engineers 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 requirements. To save a single worksheet in your workbook as a separate file, include the FileFormat argument that specifies a file format that saves a single worksheet with the SaveAs method. Examples of single-sheet file formats include Microsoft Excel 4.0 Worksheet, Text Files, and Lotus 1-2-3 (*.wk1).

For example, to save Sheet2 in the active workbook in the Microsoft Excel 4.0 worksheet format to a file called Test.xls in the current directory, use the following code: Sub SaveSingleSheet

Worksheets("sheet2").SaveAs filename:="test.xls", _ FileFormat:=xlExcel4

End Sub NOTE: If the preceding code is in the same workbook as the worksheet you are saving, you must close the workbook and then open Test.xls after you run the macro. Test.xls will be a single sheet workbook.



STATUS
This behavior is by design of the versions of Microsoft Excel listed at the beginning of this article.



MORE INFORMATION
If you use the SaveAs method with the Workbook object, Microsoft Excel saves the active worksheet in the workbook when you specify a single-sheet file format. For example, the following code saves the active worksheet in the active workbook as a single file called MyFile.xls in the Microsoft Excel 4.0 file format: ActiveWorkbook.SaveAs filename:="MyFile.xls", FileFormat:=xlExcel4 Examples of multisheet file formats include Microsoft Excel Workbook and Lotus 1-2-3 (*.wk3). When you use the SaveAs method and specify a multisheet file format (or omit the FileFormat argument), all the worksheets in the workbook are saved in the file. If you omit the FileFormat argument, the default file format is the Microsoft Excel Workbook format.

Additional query words: XL5 XL7 XL97 XL98 5.00c 7.00a 8.00 cursor XL

Keywords: kbdtacode kbprogramming KB157568

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.