如何使用xlwings将案件从VBA代码转换为Python?

时间:2019-02-08 04:16:16

标签: python excel vba xlwings

我是否可以通过使用xlwings将VBA转换为Python?

我的案子:

Excel数据:

    Excel Data:
  A      B      C       D       E       F      G        H
1 Group_1                               Group_2     
2 Col_A  Col_B  Col_C   Col_D   Col_E   Good    Bad Normal
3 A       10    Q       10      50      1       0   0
4 A       20    Q       20      30      3       3   2
5 A       30    W       10      40      4       4   3
6 B       50    E       20      20      5       5   4
7 B       40    R       Missing Missing 56      7   5
8 B       70    T       30      40      3       9   6
9 C       80    E       Missing Missing 4       4   3

步骤1: 我想在A2:H2使用自动过滤器来过滤掉“ D栏 显示:

  A      B      C       D       E       F      G        H
1 Group_1                               Group_2     
2 Col_A Col_B   Col_C   Col_D   Col_E   Good    Bad  Normal
7 B       40    R       Missing Missing 56      7   5
9 C       80    E       Missing Missing 4       4   3

步骤2: 删除已过滤行上的“缺少”值

  A      B      C       D       E       F      G        H
1 Group_1                               Group_2     
2 Col_A Col_B   Col_C   Col_D   Col_E   Good    Bad  Normal
7 B       40    R                       56      7   5
9 C       80    E                       4       4   3

步骤3: 返回完整的数据集

        Excel Data:
  A      B      C       D       E       F      G        H
1 Group_1                               Group_2     
2 Col_A  Col_B  Col_C   Col_D   Col_E   Good    Bad Normal
3 A       10    Q       10      50      1       0   0
4 A       20    Q       20      30      3       3   2
5 A       30    W       10      40      4       4   3
6 B       50    E       20      20      5       5   4
7 B       40    R                       56      7   5
8 B       70    T       30      40      3       9   6
9 C       80    E                       4       4   3

尝试

我正在使用xlwings尝试python代码:

    wb = xw.Book('test.xlsx')
    sheet = wb.sheets["sheet_1"]
    sheet.api.Range('A2').AutoFilter(4,'Missing')

如何仅选择过滤范围并删除?

(用于自动化;因此,过滤后的row_index始终会更改。) 非常感谢。

0 个答案:

没有答案