Excel单元格匹配

时间:2013-08-21 15:25:39

标签: excel autohotkey

我有一个excel文件,如下所示:

A栏。 B栏。 C栏。
Cell 1A Cell 1B Cell 1C
Cell 2A Cell 2B Cell 2C
Cell 3A Cell 3B Cell 3C

我需要创建一个authotkey脚本,可以搜索列中的所有单元格,例如列A,如果单元格内的值与剪贴板中当前的值匹配(作为示例),那么我需要它返回C列的该行的值。

例如,假设Cell 3A(在A列中)包含值1337,剪贴板包含值1337.这是一个匹配,此时我需要它返回单元格3C中的值(C列)。

我不知道如何让AHK将值(剪贴板或其他)与excel列中的单元格匹配,或者如何让AHK从一个单元格中吐出一个值,例如Cell 3C excel文件。

任何帮助非常感谢!

1 个答案:

答案 0 :(得分:0)

这可能是一个小小的车,但这里有一些代码可以帮助你入门。您可能需要增加Sleep次以使其更可靠。

InputBox, Rows, Number of Rows ; 3 in example
Inputbox, Separation, Separation between columns ; 2 in example
Sleep 3000 ; 3 seconds to select 1A in example
clipboard_backup := clipboard
Loop % Rows
{    
    Copy() 
    ; My excel was adding an extra character when copying, this removes any non-characters
    clipboard := RegExReplace(clipboard, "\W", "") 
    if (clipboard = clipboard_backup)
    {
        Send, {Right %Separation%}
        Copy()
        Send, {Left %Separation%}
        Tooltip, %clipboard%
        Sleep 1000
        Send, ^v
    }
    Send {Down}
}
ToolTip, 

Copy()
{
    global
    clipboard =
    Send ^c
    ClipWait, 4
}