realdos 发表于 2011-9-9 11:50:41

_excelcolumninsert函数无法使用变量的问题

本帖最后由 realdos 于 2011-9-9 14:34 编辑

#include <Excel.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
dim $a = 1
dim $e = 1
$a = InputBox("行/列数","在第几行/列下面插入?")
$e = InputBox("行/列数","插入行/列")
$oexcel = _ExcelBookOpen(@DesktopDir & "/2.xlsx",1)
        $oexcel.activesheet.columns($a).insert
        _ExcelBookClose($oexcel,1)显示错误。。

pchome2000 发表于 2011-9-10 11:14:30

$oexcel = _ExcelBookOpen(@DesktopDir & "/2.xlsx",1)

应该改成

$oexcel = _ExcelBookOpen(@DesktopDir & "\2.xlsx",1)

realdos 发表于 2011-9-10 11:24:31

这个不是问题关键。。关键是_excelcolumninsert函数用不了啊。。

kevinch 发表于 2011-9-10 11:52:34

多行可以用数字表示,多列的情况如果用columns表示的话只能是类似columns("A:E")这种形式,或者变通一下,用range(cells(n,1),cells(n+2,1)).entirecolumn或range(columns(n),columns(n+2))这样的形式,不知道是不是udf里未处理这种情况还是那个函数只打算插入一列,如果他只能插入一列的话,楼主要么改用我说的表达方式,要么用循环一列一列的插入。

realdos 发表于 2011-9-10 12:24:03

回复 4# kevinch

但是我也试过,函数的第三个值(插入列数)为1,即只插入一列。第二个值(即从第几列开始插入)为变量。这种情况下,程序还是出错了。

嗯,不懂。

realdos 发表于 2011-9-10 12:30:08

回复 4# kevinch
这么说吧,我试过不用变量,只给出确定值(比如,_excelcolumninsert($oexcel,3,5))的情况,是可以运行,并在第三列处插入5列的。
但一涉及到变量的情况,就不行了。

kevinch 发表于 2011-9-10 12:53:59

自己监控一下变量的类型是不是数字及变量的值是不是有效的,如果还是不行就把你的代码和附件弄上来,我可以帮你写写看。
页: [1]
查看完整版本: _excelcolumninsert函数无法使用变量的问题