VBA
Convert each number to text before making the sheet CSV
Cell = Format(Cell.Value, "@")
If iUno < 0 And iDue < 0 Then
Set objExcel = CreateObject("Excel.Application")
objExcel.Workbooks.Open sNomeFile, 0, True
sNomeFile = Replace(UCase(sNomeFile), "PRICES", "PricesNew")
sNomeFile = Replace(UCase(sNomeFile), ".XLS", ".csv")
With objExcel.ActiveWorkbook.ActiveSheet
Set LastCell = .Cells _
.SpecialCells(xlCellTypeLastCell)
Set ShtRange = .Range("A1", LastCell)
End With
For Each Cell In ShtRange
If IsNumeric(Cell) Then
Cell = Format(Cell.Value, "@")
End If
Next Cell
objExcel.ActiveWorkbook.SaveAs sNomeFile, xlTextMSDOS, False
objExcel.Close
objExcel = Nothing
End If
"Alberto Brivio" wrote:
Dear All,
as you can see, this is an instruction to save a .CSV file from an excel
file, but this conversion keep 2 decimal places only, so my question is how
can I get 4 decimal places?
instruction is
If iUno < 0 And iDue < 0 Then
Set objExcel = CreateObject("Excel.Application")
objExcel.Workbooks.Open sNomeFile, 0, True
sNomeFile = Replace(UCase(sNomeFile), "PRICES", "PricesNew")
sNomeFile = Replace(UCase(sNomeFile), ".XLS", ".csv")
objExcel.ActiveWorkbook.SaveAs sNomeFile, xlTextMSDOS, False
(***)
objExcel.Close
objExcel = Nothing
End If
Regards
Alberto Brivio
|