如何删除xlwings中的列?

Mat*_*tiH 5 python vba xlwings

xlwings在Windows(使用Python 2.7的Excel 2007)上使用,并且想使用删除范围或列xlwings。据我所知,删除范围或列是一项缺少的功能,因此我尝试遵循此处给出的说明并尝试访问.DeleteVBA中的Range对象的方法。您对导致错误的原因以及如何删除其中的整个列范围有任何建议xlwings吗?

我尝试在命令行中运行的代码如下(用于删除活动工作簿中的整个列):

import xlwings as xw
wb = xw.Workbook.active()
xw.Range('C1:C3').xl_range.EntireColumn.Delete
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

bound method CDispatch.Delete of <COMObject <unknown>>>
Run Code Online (Sandbox Code Playgroud)

Xlwings可以清除(by Range('C1:C3').clear())范围内的值,但会在工作表中留下空白范围或列。

Aar*_*sen 4

访问整个列,然后使用.xl_range.Delete()

xw.Range('C:C').xl_range.Delete()
Run Code Online (Sandbox Code Playgroud)

  • 不再有属性 `xl_range`,但您现在可以将其替换为 `api` 以访问底层 pywin32 语法 ([source](http://docs.xlwings.org/en/stable/missing_features.html)) (2认同)