Try returning the Formula property:
msgbox activecell.formula
returned 1234.5678 when here was an equal sign.
Robert Flanagan
http://www.add-ins.com
Productivity add-ins and downloadable books on VB macros for Excel
"Phil Hibbs" <(E-Mail Removed)> wrote in message
news:d9244294-2fda-4c86-ad35-(E-Mail Removed)...
>I have a spreadsheet that has VBA that opens, reads, and closes a list
> of other spreadsheets and tabs, writing the contents of those
> spreadsheets out as CSV files.
>
> The problem that I am encountering is where one of the sheets has a
> column that is not wide enough for all the data, so 1234.5678 is read
> as 1234.568. I have been getting around this by doing a
> Sheet.Columns.AutoFit call when opening each sheet.
>
> This is now breaking on one particular sheet. When I open it, it shows
> 1234.5678, but when I manually auto-fit the column, it shrinks a
> little bit and changes to 1234.568, and this is the same as is
> happening in my VBA code.
>
> Any suggestions as to what I can do in my VBA to read the sheet
> accurately? I don't want to use the Value2 property, as this breaks
> date cells. The only thing I can think of is to do the AutoFit and
> then loop through all the columns increasing the widths.
>
> Phil Hibbs.