AHK快捷键(29)——跳转单元格

wils
wils Lv.2 潜力创作者

Lv.2潜力创作者

今天论坛有朋友问,如何方便的跳转单元格

看了原来自己写的ahk脚本,实在汗颜,有太多需要修改的地方


🔔

#Requires AutoHotkey v2.0

#SingleInstance Force

GetKet() {

; 获取et对象,避免com未注册

try {

return ComObjActive("Ket.Application")

} catch {

MsgBox "等待COM注册", , "0 T0.6"

return ComObjActive("Ket.Application")

}

}

F6::

F7::

{

et := GetKet()

if (A_ThisHotkey == "F6") {

static t := Array()

a := [et.ActiveWorkbook.Name, et.ActiveSheet.Name, et.Selection.Address()]

try {

; et.Selection.Precedents.Areas.Item(1).Select()

Send "^["

t.Push(a)

}

} else {

try {

a := t.Pop()

et.Workbooks(a[1]).Sheets(a[2]).Activate

et.Range(a[3]).Select

}

}

et := ""

}

原来用ctrl + [ 发送快捷键的方式进行跳转

可以改用Precedents获取引用的单元格,自行决定跳转哪些单元格

原来只支持一次跳转

现在改成将地址压入栈,所以可以连续的跳转,以及连续的弹栈跳回原单元格


总的来说写的很粗糙,所有地方都可以进一步修改,有兴趣的朋友可以试一下,非常期待反馈,我再修改

海南省
浏览 461
收藏
8
分享
8 +1
+1
全部评论