| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 550 人关注过本帖
标题:调用EXCEL显示E+的问题
只看楼主 加入收藏
yudeyinji198
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:139
专家分:133
注 册:2012-8-30
结帖率:96%
收藏
已结贴  问题点数:10 回复次数:4 
调用EXCEL显示E+的问题
请问,VB在调用EXCEL的时候,然后用Listview显示出来,在身份证那一列显示了7.12E+17,怎么样才能不让listview显示科学记数法呢? 14位的可以显示。
如果,不修改EXCEL源文件,既在调用之前,手动打开EXCEL,设置单元格宽度,等这类方法。
还有其他方法吗?
谢谢!

[ 本帖最后由 yudeyinji198 于 2013-4-24 16:22 编辑 ]
搜索更多相关主题的帖子: 身份证 源文件 EXCEL 
2013-04-24 16:14
lowxiong
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:27
帖 子:652
专家分:3402
注 册:2008-5-7
收藏
得分:10 
假设省份证所在列为A,用下列语句设置数字显示格式为文本即可
mysheet.range("A:A").NumberFormat="@"
2013-04-24 19:42
yudeyinji198
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:139
专家分:133
注 册:2012-8-30
收藏
得分:0 
回复 2楼 lowxiong
程序代码:
Set xlsheet = xlBook.Worksheets(1) 

xlsheet.Range("Q1:Q1").NumberFormat = "@"
xlsheet.Range("17:17").NumberFormat = "@"
For i = 2 To 10
            Set litem = ListView1.ListItems.Add()
            litem.Text = xlsheet.Cells(i, 1)
            litem.SubItems(1) = xlsheet.Cells(i, 2)
.....
to lowxiong:
    我添加了,可是还是显示了数值格式的,并没改变。
    Q1是在EXCEL的列数,17是身份证 在listview的列数。是不是我还需要添加什么?
2013-04-25 09:37
lowxiong
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:27
帖 子:652
专家分:3402
注 册:2008-5-7
收藏
得分:0 
你用下面语句试试,他会把列A到Q的都用文本显示,这种方法只适用在输入数据之前设置,已经输入了的在改变不了,因此,你先做该设置,再在单元格中输入数据才行。
xlsheet.Range("A:Q").NumberFormat = "@"


[ 本帖最后由 lowxiong 于 2013-4-25 10:28 编辑 ]
2013-04-25 10:23
yudeyinji198
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:139
专家分:133
注 册:2012-8-30
收藏
得分:0 
回复 4楼 lowxiong
我是直接打开已存在的EXCEL,然后读取到Listview的,按您这么方法,就是说改变不了。
是只能这样么,先改变单元格属性,再写入EXCEL数据,再重新读取,显示?
2013-04-25 11:08
快速回复:调用EXCEL显示E+的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017336 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved