以文本方式查看主题
- Foxtable(狐表) (http://www.foxtable.com/bbs/index.asp)
-- 专家坐堂 (http://www.foxtable.com/bbs/list.asp?boardid=2)
---- EXCEL读取后格式不对 (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=189981)
|
-- 作者:lur320
-- 发布时间:2024/1/9 9:39:00
-- EXCEL读取后格式不对
读取excel的数值后,0.0004被保存位4E-05的科学计算法。如何改为0.0004?
如下: 结论一列是250的字符列。而excel这一行的数据是0.0004. 即使使用cstr还是会显示为科学计数法。
Dim Book As New XLS.Book(file) Dim Sheet As XLS.Sheet = Book.Sheets(1) dr("测试项") = Sheet(0, i).text dr("结论") = CStr(Sheet(1, i).text)
|
-- 作者:有点蓝
-- 发布时间:2024/1/9 9:41:00
--
使用value呢
dr("结论") = Sheet(1, i).value
|
-- 作者:lur320
-- 发布时间:2024/1/9 9:47:00
--
dr("结论") = CStr(Sheet(1, i).text) If CStr(Sheet(1, i).text) = "4E-05" Then MessageBox.Show(Sheet(1, i).value)
End If
我通过这个方式显示value。还是4e-05
|
-- 作者:有点蓝
-- 发布时间:2024/1/9 10:04:00
--
那就只能使用vba导入了:http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=65686&skin=0
|
-- 作者:lur320
-- 发布时间:2024/1/9 11:23:00
--
不对,我使用了tryparse还是科学计数法。  此主题相关图片如下:123.png 
|
-- 作者:lur320
-- 发布时间:2024/1/9 11:33:00
--
应该是自动按照科学计数法表达了,怎么做格式化处理?  此主题相关图片如下:123.png 
|
-- 作者:lur320
-- 发布时间:2024/1/9 11:38:00
--
自定义的是可以的,读取就算抓换了还是不行。
此主题相关图片如下:123.png

|
-- 作者:有点蓝
-- 发布时间:2024/1/9 11:39:00
--
Dim s As String = "1E-07" Dim d As Double = 0 If Double.TryParse(s, d) Then Output.Show(format(d, "0.############")) End
|
-- 作者:lur320
-- 发布时间:2024/1/9 11:42:00
--
好像可以了。。。 Dim D As Decimal
d = val(Sheet(1, i).value) Output.Show("sadada" & d)
|