找回密码
 加入
搜索
查看: 21123|回复: 7

[AU3基础] (已解决)arraydisplay显示的值写入excel 错误?

  [复制链接]
发表于 2013-10-5 16:57:47 | 显示全部楼层 |阅读模式
本帖最后由 scorpio1102 于 2013-10-7 08:17 编辑

如题arraydisplay显示的数值与写入excel的值不对应?哪有问题呀.
#include<excel.au3>
#include<array.au3>
local $value=1310050013100001,$count=0,$value_string='',$value_new
for $i=0 to 999
   ;$value+=$count
   $value_new=$value+$i
   $value_string&=$value_new&"|"
   
Next
$array_string=StringSplit($value_string,"|")
_arraypush($array_string,'')
_arraydisplay($array_string)
if $array_string<>0 Then
        $oExcel = _ExcelBookNew()
        $oExcel.activesheet.range("A1").resize(UBound($array_string),1)=$oExcel.transpose($array_string)
        EndIf
excel 显示以下值
(顺便问一下如何以不带小数的数值形式呈现在excel 里面.默认显示如1.31005E+15)
1310050013100000
1310050013100000
1310050013100000
1310050013100000
1310050013100000
1310050013100000
1310050013100000
1310050013100000
1310050013100000
1310050013100010
1310050013100010
1310050013100010
1310050013100010
1310050013100010
1310050013100010
1310050013100010
1310050013100010
1310050013100010
1310050013100010
1310050013100020
1310050013100020
1310050013100020
1310050013100020
1310050013100020
1310050013100020
1310050013100020
1310050013100020
1310050013100020
1310050013100020
1310050013100030
...........
发表于 2013-10-5 17:39:51 | 显示全部楼层
设为文本啊
发表于 2013-10-5 17:44:41 | 显示全部楼层
本帖最后由 kevinch 于 2013-10-5 17:46 编辑

excel只认15位以内的数字,16位以上的后面会变成0,需要设置单元格为文本才能正常赋值
 楼主| 发表于 2013-10-5 21:44:55 | 显示全部楼层
本帖最后由 scorpio1102 于 2013-10-5 22:09 编辑

回复 3# kevinch


    如何在_excelbooknew()后设置单元格格式为文本格式。

搜索了一下,是不是这个
$oExcel.workbooks(1).activesheet.range("A1").numberformatlocal="@"
发表于 2011-5-12 18:29 | 只看该作者
$oExcelApp.workbooks(1).activesheet.cells(2,3).numberformatlocal="@"
复制代码
$oExcelApp.workbooks(1).activesheet.range("C2").numberformatlocal="@"
复制代码
这两个都是指定c2单元格的格式是文本的
顺便问一下,设置某一列,或某一行呢。是不是activesheet.colum(A)或activesheet.rows(1),呵呵见笑了。
发表于 2013-10-5 21:59:51 | 显示全部楼层
回复 4# scorpio1102
没错,这样就可以设置成文本格式了
 楼主| 发表于 2013-10-5 22:02:55 | 显示全部楼层
本帖最后由 scorpio1102 于 2013-10-5 22:14 编辑

回复 5# kevinch


    顺便问一下,设置某一列,或某一行呢。是不是activesheet.colum(A)或activesheet.rows(1),呵呵见笑了。
numberformatlocal有哪些属性,哪里可以找参考资料,先谢了。
发表于 2013-10-6 03:33:25 | 显示全部楼层
回复 6# scorpio1102


    http://www.autoitx.com/thread-39715-1-1.html
    看这个Excel录制宏的方法,基本上没有你搞不定的事情了。
发表于 2013-10-6 07:08:41 | 显示全部楼层
回复 6# scorpio1102

columns(2)或者range("B:B")引用的都是B列
rows(2)或者range("2:2")引用的都是第二行

numberformatlocal基本上就几个常用的,可以用7楼说的录制宏的方式找到,或者查询帮助文件
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-5-18 14:11 , Processed in 0.074608 second(s), 22 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表