Tag: 精度

Excel VBA十进制数字在文本输出中被转换为整数

我有一个电子表格,我写了一个macros,它使用电子表格中的一些值来输出一个文本文件。 一切工作正常,除了一个问题: 如果我有一个像15.0这样的浮点数,它将在输出文本文件中显示为整数15,没有小数点。 如果小数点后的数字不是零,我不会观察到同样的问题,例如15.1写成15.1; 那里没有问题。 我不知道是否有某种命令或属性,这将强制所有数字写入输出文件为浮动数字? 这是我写的数字文本文件的行。 WeightList(i)和SpacingList(i)是string数组,用于存储从电子表格收集的数字。 Print #1, Chr(9); "<truck axleW=" & Chr(34) & _ WeightList(i) & Chr(34) & " axleS=" & _ Chr(34) & SpacingList(i) & Chr(34) & "></truck>" 谢谢! 编辑:这是数字转换为string的行,我尝试使用格式命令,但这并没有帮助: WeightList(i) = Format("0.0", Truck(i).AxleWeights(i)) EDIT2:在改变格式命令中参数的顺序之后,代码现在可以工作了。 有关详细信息,请参阅接受的答案。

比较价值和差异应该是相同的不是

我在Windows 7上使用Excel 2013。 我使用基本的IF和一些运算符做了一些Excel数据检查。 而且我遇到了一个问题,导致结果不一致。 我检查的是: 1.24 = 66.64 – 65.4 下面是我使用的公式,结果应该在math上是相等的,但它给我不等于: =IF(1.24 = 66.64 – 65.4, "EQUAL", "NOT EQUAL") ;Result: NOT EQUAL 我试图稍微修改数据到: =IF(1.24 = 56.64 – 55.4, "EQUAL", "NOT EQUAL") ;Result: EQUAL 我很惊讶,它返回正确的结果。 这是一个错误,如果是这样,有什么解决方法我可以用于类似的检查?

Excel VBA不显示5精度小数

Dim StrIntVar1 As String StrIntVar1 = "123456780123.12345" StrIntVar1 = Format(StrMA663UnitCstAmt, "###0.00000") ThisWorkbook.Worksheets(Main_Sheet).Cells(1, 1).Value = StrIntVar1 单元格显示= 1234567890123.12 单元应显示123456780123.12345

使用大pandas读取excel时精度的损失

我试图使用pandas来读取一个dataframe的Excel表格,但浮点列,数据读取不正确。 我使用函数read_excel()来完成这个任务 在excel中,值为225789.479905466,而在数据框中,值为225789.47990546614,这导致我从excel导入数据到数据库的差异。 有没有人用pandas.read_exel()面临同样的问题。 阅读csv到数据框我没有问题。 杰里米

在SSIS中的Excel目标中创build表时出错

我在SSIS中的数据转换有问题。 我有一个SQL表,有一个字段与十进制数据types的列。 我需要在Excel和SSIS中创buildExcel中的报表时目标我收到此消息“十进制数据types无效的精度(Microsoft Access数据库引擎)”。 Excel中的字段是NUMERIC(11,2)。 我认为数字2是十进制数字,但我是红色的是规模。 11,2是我在SQL中使用的十进制格式数据types。 我该如何解决我的问题? 谢谢大家 乔治

如何在导出到csv时保留小数精度并用excel打开

我已经将值导出到c#中的csv文件。 csv文件每个值都有5个小数位,但是当用excel打开时,小数位数减less为2。 有没有一种编程方式确保在csv在Excel中打开时保留小数位? var nFI = new NumberFormatInfo(); nFI.NumberDecimalDigits = precision; line += (CsvEscape(((decimal)dr[colName]).ToString("N", nFI)) + ","); 这是如何将小数输出到csv。

数据精度损失增加值的Excel单元格c#

早上,我有一个与Excel单元格工作的准确性问题。 在下面的代码中,我创build了一个包含我所有类组件的数组,以便于添加数据。 所有这些都是string,我已经检查过,在添加到Excel单元格之前,数据是正确的。 string[] row = { bill.BillNumber, "\t", bill.ContractNumber, (more data…)}; for (int j = 1; j <= row.Length; j++) { if (j – 1 == 0) { float bin = 0; float.TryParse(row[j – 1], out bin); workSheet.Cells[z, j] = bin; } else { workSheet.Cells[z, j] = row[j – 1]; } } 一开始我没有,如果我添加string串到细胞。 结果是: […]

如何解决PhpExcel额外的小数点错误?

我正在使用PHPExcel进行客户端项目。 有这个错误我一直在面对额外的小数位是随机添加一些单元格,而阅读Excel文件。 例如,而不是56.25 ,我得到56.24999999999 。 我已经将这个问题追溯到PHPExcel本身,我花了很多时间浏览文档,但是我还没有find任何可以解决这个问题的方法。 我不能把数字四舍五入到一个给定的小数点,因为它随机发生,不同的单元格有不同的小数点数字。 请帮忙!!! 编辑:关键是小数点保持完全一样,他们是手动input。 所以如果客户端在一个单元中手动input34.25,然后在其他单元中input51.3456,他们应该保持完全一样! 所以四舍五入并不是这里理想的解决scheme。