_LK_一生所爱 发表于 2012-1-25 16:54:20

诚心求指导:AU3调用EXCEL VBA的代码是多少?

各位版主 高手 大侠你们好! ^_^

我非常希望学好这个软件啊我工作中用到这个实在是太多了!

以前我是用按键精灵的 不过觉得这个比按键精灵好多了 所以立刻换为学习AUTOIT3!!


我的EXCEL用VBA写好了宏的了,请问打开一个工作表后,如何写代码让AU3运行宏?
比如Marco1   Marco2 怎么让它运行?模拟按键点太低级了,调用API才爽啊~~

诚心求指导,非常感谢!!


另外用AUTOIT操作网页和邮件应该系统学习什么知识?看论坛毕竟不是系统知识,
各种级别的代码需要各种级别的基础知识去理解和掌握,打好基础才能学好啊!

希望大家推荐点好书吧,既能有实际操作之大用,又能打好理论知识的就完美了。
单纯局限于有限的实操和拘泥于理论知识的都不是好书,既完善基础概念但不拘
泥其中才是高手啊,求好书就是求好老师,希望少走弯路,希望论坛高手和斑竹
发发意见,谢谢啦!!

_LK_一生所爱 发表于 2012-1-25 16:56:56

我学习VBA时候就发现

虽然写出来的功能好像都一样

但是其实系统地学习各项基础概念 是多么重要啊!!

_LK_一生所爱 发表于 2012-1-25 17:27:03

网页操作我不需要非常深的,基本上有:
1   页面跳转
2   页面元素赋值
3   页面元素点击(包括有下拉框的)

就OK了 不知道这3点的AN3代码是多少呢?

bhwhui 发表于 2012-1-25 17:30:08

“我的EXCEL用VBA写好了宏的了,请问打开一个工作表后,如何写代码让AU3运行宏?”

记得是把宏放在固定目录下就ok的,不需写代码。
如果打开另外外部数据连接,选取“选项”里面的某项就行了,2个地方改改而已。

_LK_一生所爱 发表于 2012-1-25 17:57:09

bhwhui 您好,因为我用到的表格很多,页数也很多,

我用AU3打开EXCEL和激活了相应页面后,不知道运行里面的宏(一般都是宏按钮)的AU3代码是什么呢?

netegg 发表于 2012-1-25 19:40:17

看看http://www.autoitscript.com/forum/topic/107832-updating-excel-vba-code/page__p__814263__hl__excel%20vba__fromsearch__1#entry814263这个地址

_LK_一生所爱 发表于 2012-1-25 19:44:59

谢谢netegg !

是不是 $oExcel.Run("Macro1")
这句就OK了?

运行某页的宏代码应该是很简单的句子就OK了吧 ^^

netegg 发表于 2012-1-25 20:12:08

回复 7# _LK_一生所爱
excel macro也可以看成是一个完整的对象,不过是excel环境里的

半芯竹 发表于 2012-1-25 20:20:46

也可以看看这里,看是否合适你:http://www.autoitx.com/thread-28910-1-1.html

kevinch 发表于 2012-1-26 13:49:16

不要激活了再操作,影响速度,用with语句吧

user3000 发表于 2012-1-26 14:17:06

不要激活了再操作,影响速度,用with语句吧
kevinch 发表于 2012-1-26 13:49 http://www.autoitx.com/images/common/back.gif


    兄弟, 有时间给点实例吧!
看过不少您的帖子, 您对这方面实在是个行家了!

kevinch 发表于 2012-1-26 14:42:39

$excel=ObjCreate("excel.application");创建excel进程
$excel.visible=True;显示进程窗口
$wb=$excel.workbooks.add;添加个工作簿,一般默认有三个工作表,除非你自己改过
For $ws In $wb.worksheets;循环各个工作表
        With $ws;关键语句with,可以不激活而操作其中内容,尤其是某些激活才能实现的功能也可以这样实现,唯一遗憾的是au3的with语句不像vba里的可以支持多级,整个作用域中不能再出现其他with语句(个人测试结果)
                For $n=1 To 10;下面向工作表写入点数据
                        .cells($n,1)=$n
                Next
        EndWith
Next上个小例子,说明一下,我是因为对vba比较熟,所以偏向于直接修改vba语句然后用到au3中来,没有基础的话建议还是使用成熟的udf函数

_LK_一生所爱 发表于 2012-1-26 16:31:59

本帖最后由 _LK_一生所爱 于 2012-1-26 16:36 编辑

回复 12# kevinch

高手Kevinch您好,非常感谢您的指导!
不过我觉得操作EXCEL无论如何还是自家的VBA功能更强大,支持更完善。
而且EXCEL的VBA有AU3一个无法比拟的巨大的优势:~~完善的教程!!~~

我很想学好AU3但是教程实在是少啊~~!也不全面和不系统~~我家就有几本EXCEL的VBA的教程,实例和概念都非常多和全,但是AU3的教学就相比显得很少了~~

我有一个提取数据的EXCEL VBA提取2000个文件的数据,其中还包含很多条件判断,我想用AU3写的话,会非常难吧,一些语法也未必支持哦。

其实AU3就像一个航空母舰,提供强大的自动化办公的动力,但是具体情况,比如制空调用格斗战斗机,空炸使用空炸机,反潜使用反潜机一样,调用API调用DLL 调用INI等,就是不同的飞机,各发挥其优势!EXCEL的VBA也是一种特种战斗机,让它完成自己擅长的领域才是AU3这个自动化将领的优势,而“代百思之职”则不是也不可能是一个几M的软件的能力所能企及的了~~   

再次请教各位高手运行已经ACTIVE的EXCEL某页的VBA的AU3代码是什么呢(我一般是做一个EXCEL宏按钮 比如是Marco1 模拟按键就太低级啦 请教运行这个MARCO1的代码是什么呢 )
其实就1~2行代码吧 不过我确实不知道哦~~请教高手Kevinch和各位了,谢谢!

_LK_一生所爱 发表于 2012-1-26 16:38:25

回复 8# netegg


netegg您好,我新手哦,还是不知道代码是多少呢~~

如果您知道的话就请您写出来了,不胜感激!

kevinch 发表于 2012-1-26 17:33:04

回复 13# _LK_一生所爱
最好是有几个你所说的2000个文件中的例子,说下要的结果,我用实例来演示你会比较有感觉吧
页: [1] 2
查看完整版本: 诚心求指导:AU3调用EXCEL VBA的代码是多少?