从excel表复制单元格并将其粘贴到数据库查询Sikuli

时间:2016-01-25 10:45:48

标签: excel automation sikuli

我是Sikuli的新手。我需要从excel表中复制数据并使用sikuli脚本将它们粘贴到数据库查询中。如何在excel单元格中迭代以重复复制和粘贴数据。

excel cells

这些数据需要一个接一个地复制和粘贴。

2 个答案:

答案 0 :(得分:0)

一次复制所有单元格可能更容易,然后逐个粘贴它们。

一旦Sikuli打开Excel,您就可以执行以下操作:

type(Key.HOME, KeyModifier.CTRL) #takes you to cell A1
type("a", KeyModifier.CTRL) #select all
type("c", KeyModifier.CTRL) #copy to clipboard
fromExcel = Env.GetClipboard().strip() #get clipboard contents into Sikuli, without leading or trailing white space
cells = fromExcel.split("/n") #split each cell into list on newline

#go to the destination app, maybe using App.open("nameOfYourApp") if it's not open yet, or App.focus("nameOfYourApp") if it is already open

for cell in cells: #use python to iterate through your list
    #navigate to the line or cell where you want to paste
    paste(cell) 

这样的事情会有所帮助吗?

答案 1 :(得分:0)

与其提供具体方法,让我们了解您的选择。

  1. 模拟用户键盘操作(就像@autoKarma所描述的那样)。
  2. 具有非常特定结构的Excel工作表允许您检测一些关键点,如第一列和第一行,然后根据它们计算其他单元格位置。
  3. 您可以尝试使用其中一个Python Excel API库直接通过API访问Excel工作表。如果您只需要阅读文档并对其进行修改,我相信这很容易做到。
  4. 注意:在所有情况下,您显然必须考虑如何将自己带到屏幕上有一个打开的Excel工作表以及完成后如何处理它。 / p>