如何每次使用单个热键从 excel(xslx)文件逐个单元格发送数据?

如何每次使用单个热键从 excel(xslx)文件逐个单元格发送数据?

我尝试使用 autohotkey 中的循环(读取文件内容)命令将数据从 excel 文件发送到另一个文件。但是它不起作用。我编写了一个脚本,如下所示:

FileRead, fileData, D:\data.xlsx
lineIndex := 1

f1::
    Loop, Parse, fileData, `n
    {

        if (A_Index == lineIndex) {
            SendInput, %A_LoopField%

            lineIndex++
            break
        }
    }
return

在上面的例子中,我创建了F1一个热键。我的 D 盘中有一个 data.xlsx 文件。现在我希望当我按下F1键时,它应该一次只从data.xlsx文件中发送一个单元格的数据(值)。

当我再次按下F1键时,它应该从文件中发送下一个单元格的数据,data.xlsx依此类推。但它没有这样做。但是,它可以完美地处理 .txt 文件,即它可以逐行发送任何.txt文件中的数据,但这对文件根本不起作用.xlsx

答案1

FileRead 无法处理.xlsx文件,因为它们具有特殊格式。您需要将数据导出到文件.csv,然后解析该文件(如果可能)。

相关内容