VBK系列之Excel——Ahk通过Com连接Excel

VBK系列之Excel——Ahk通过Com连接Excelox:=””下面给出三种情况的示例代码1、当前打开了一个Excel工作簿,我们通过Ahk读取单元格A1 的内容F9::ox

大家好,欢迎来到IT知识分享网。

VBK=Vba+Ahk 操作excel,遇到重复性的操作,我们通常会用到VBA脚本,实现各种Office软件操作的自动化。我个人在熟悉Ahk脚本后,发现一些简单的操作,通过Ahk写代码,也很方便。我常把这两者结合,并称之为VBK。VBK并没有什么新的东西,就是通过AHK用com连接Excel,进而利用VBA的特性。本质上跟VBA本身是一样的效果,对于一些通用的操作或者常规性的操作,有时候ahk会显得灵活些。

今天,先讲一下最基础的,Ahk通过Com连接excel的方法(Com的基础知识推荐看看知乎上胡杨的文章,深入简出、通俗易懂)。这里就不做重复。

1、连接一个打开了的excel工作簿。

ox := ComObjActive("Excel.Application") ;后续的介绍中,我都会常用ox作为excel的对象名。

2、如果当前没有打开的Excel窗口,我们可以创建Com对象

ox := ComObjCreate("Excel.Application") ;创建一个新的Excel Application对象。

3、直接连接到excel文件,不在前台打开文件,进行一些操作,比如读取里面的内容等等。

ox:=ComObjget(Excel文件路径)

操作完成后,视情况可能需要退出excel进程,则可以用到下面的语句。

ox.quit ox:=""

下面给出三种情况的示例代码

1、当前打开了一个Excel工作簿,我们通过Ahk读取单元格 A1 的内容

F9:: ox := ComObjActive("Excel.Application") ;后续的介绍中,我都会常用ox作为excel的对象名。 MsgBox % ox.range("A1").text return 

VBK系列之Excel——Ahk通过Com连接Excel

示例1

2、当前没有打开任何Excel文件,通过ahk创建一个excel文档,并将A1赋值13

 ox := ComObjCreate("Excel.Application") ox.Workbooks.Add() ;创建一个新的工作簿 ox.visible:=true ;跟Winword一样,小技巧,强制显示。 ox.range("A1"):="13" return

VBK系列之Excel——Ahk通过Com连接Excel

示例2

3、前台不打开文档,读取某个excel文档内的单元格内容

文件路径:="c:\test\示例文档.xlsx" ox:=comobjget(文件路径) ;连接文档 MsgBox % ox.sheets(1).Range("A1").value ox:=""

VBK系列之Excel——Ahk通过Com连接Excel

示例3

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/65183.html

(0)

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信