首页 > 解决方案 > 一旦你在excel中有正确的行,如何搜索某一列

问题描述

我正在寻找创建一个脚本,该脚本将自动将客户运输信息填写到网络表单 (DPD) 中。我们在工作中使用的订单管理系统允许您将订单信息导出到 Excel 电子表格中,其中包括订单号、账单和送货地址以及其他一些不相关的信息。

我找到了一种使用 xlwings 在 excel 中查找特定短语的方法。期望的用途是能够输入诸如“102”之类的订单号,然后使用 .address 我可以获得单元格位置。我将在下面发布代码草案:

import xlwings as xw

book = r'ord.xlsx'
sheet = 'Order Export 1'


def get_row(ordernum):

    wb = xw.Book(book)
    sht = wb.sheets[sheet]

    order = wb.sheets[sheet].api.UsedRange.Find(ordernum)

    print(order.address)

    return()

def main():
    ordernum = float(input('What is your oder num?'))
    order_row = get_row(ordernum)

main() 

## Output ## 
What is your oder num?250
$A$2

现在我需要沿着这一行导航到某些列并查找附加信息,例如邮政编码、订单价格、地址行 1、城镇、城市。我所拥有的只是该行的位置,我不知道如何在该行中导航/搜索“邮政编码”列中的值。

我也在考虑使用 xlrd 和 openpyxl,但发现 find 功能可以最快地完成我需要的工作。如果这些能提供我需要的更多功能,我当然会考虑使用它们来代替......或两者兼而有之。为我目前在自学过程中可能的天真而道歉,你只是不知道你不知道什么。

我想一旦我有了数据,我就可以自信地使用 selenium 来填写表格,然后我将拥有不再需要手动填写的运输标签。

最后一点,我试图找到类似的主题,并发现了很多关于在单元格中查找某些值的信息,但现在如何按照我的要求从找到的行中导航。

在此先感谢,威廉

标签: pythonexcelxlwings

解决方案


推荐阅读