Excel VBA,处理E-10

Excel VBA,处理E-10,excel,vba,Excel,Vba,我相信我的细胞应该是0。7.45058059692383E-12。 如何在代码中创建这些0 Sheets("MainData").Range("C" & i) = Sheets("CM_MainData").Range("C" & i) 我认为将NumberFormat转换为0可能会有所帮助,但它不起作用 Sheets("MainData").Range("C"

我相信我的细胞应该是0。7.45058059692383E-12。 如何在代码中创建这些0

Sheets("MainData").Range("C" & i) = Sheets("CM_MainData").Range("C" & i)
我认为将NumberFormat转换为0可能会有所帮助,但它不起作用

Sheets("MainData").Range("C" & i) = Sheets("CM_MainData").Range("C" & i).NumberFormat = "0.00"
相反,结果是错误的

请帮忙

完整代码:

价值转移:

Sheets("MainData").Range("C" & i).Value = Sheets("CM_MainData").Range("C" & i).Value
数字格式是一个单独的步骤,不会更改基础值:

或使用WorksheetFunction.Round会更改基础值

价值转移:

Sheets("MainData").Range("C" & i).Value = Sheets("CM_MainData").Range("C" & i).Value
数字格式是一个单独的步骤,不会更改基础值:

或使用WorksheetFunction.Round会更改基础值


为什么?我正在将数据从一张图纸传输到另一张图纸。在传输时,我想处理这些E-12数字。SheetsMinData.Range C&I=RoundSheetsCM_MainData.Range C&I,2请记住,更改数字格式不会仅更改单元格中的值的显示方式。通过在插入时对值进行舍入,将输入舍入的值。谢谢SCOTTY。我能把它四舍五入到更多的小数位吗?是的,把2改成所需的小数位数。为什么?我正在将数据从一张图纸传输到另一张图纸。在传输时,我想处理这些E-12数字。SheetsMinData.Range C&I=RoundSheetsCM_MainData.Range C&I,2请记住,更改数字格式不会仅更改单元格中的值的显示方式。通过在插入时对值进行舍入,将输入舍入的值。谢谢SCOTTY。我能把它四舍五入到更多的小数位吗?是的,把2改成所需的小数位数。
Sheets("MainData").Range("C" & i).NumberFormat = "0.00"
Sheets("MainData").Range("C" & i).Value = WorksheetFunction.Round(Sheets("CM_MainData").Range("C" & i).Value, 2)