删除区域
<p>[TOC]</p>
<h2>1.命令说明</h2>
<p>删除指定单元格区域</p>
<h2>2.命令原型</h2>
<pre><code>Excel.DeleteRange(excelWorkBook, sheet=&quot;Sheet1&quot;, cells=&quot;A1:B2&quot;, shift=None, isSave=False)</code></pre>
<h2>3.命令参数</h2>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">必选</th>
<th style="text-align: left;">类型</th>
<th style="text-align: left;">默认值</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">excelWorkBook</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">Book</td>
<td style="text-align: left;">无</td>
<td>使用 "打开Excel工作簿"命令(Excel.OpenExcel) 或 "绑定Excel工作簿" 命令(Excel.BindBook)返回的工作簿对象</td>
</tr>
<tr>
<td style="text-align: left;">sheet</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">string/int</td>
<td style="text-align: left;">"Sheet1"</td>
<td>如果使用字符串,则表示指定工作表的名字;使用数字,则表示指定工作表的顺序(例如:0、1、2代表从左边开始正数第1、2、3个工作表;-1、-2、-3代表从右边开始倒数第1、2、3个工作表)。默认 "Sheet1"</td>
</tr>
<tr>
<td style="text-align: left;">cells</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">string/list</td>
<td style="text-align: left;">"A1:B2"</td>
<td>删除的单元格范围,支持单元格名如"A1"或"A1:B1"与行列列表如[行号, 列号]或[[行号, 列号], [行号, 列号]]四种格式,当使用单元格名时不区分大小写。默认"A1:B2"</td>
</tr>
<tr>
<td style="text-align: left;">shift</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">str</td>
<td style="text-align: left;">None</td>
<td>填写"up"时(不区分大小写),删除区域的下方单元格向上移动,填写"left"时(不区分大小写),删除区域的右侧向左移动,填写None时,Excel根据区域的形状决定。默认None</td>
</tr>
<tr>
<td style="text-align: left;">isSave</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">bool</td>
<td style="text-align: left;">False</td>
<td>操作完成立即保存。默认False</td>
</tr>
</tbody>
</table>
<h2>4.返回结果</h2>
<p>无(None值)</p>
<h2>5.运行实例</h2>
<pre><code>&quot;&quot;&quot;
/*******************删除区域*******************
入参:
excelWorkBook:[必选参数]使用 &quot;打开Excel工作簿&quot;命令(Excel.OpenExcel) 或 &quot;绑定Excel工作簿&quot; 命令(Excel.BindBook)返回的工作簿对象
sheet:[可选参数]如果使用字符串,则表示指定工作表的名字;使用数字,则表示指定工作表的顺序(例如:0、1、2代表从左边开始正数第1、2、3个工作表;-1、-2、-3代表从右边开始倒数第1、2、3个工作表)。默认&quot;Sheet1&quot;
cells:[可选参数]删除的单元格范围,支持单元格名如&quot;A1&quot;或&quot;A1:B1&quot;与行列列表如[行号, 列号]或[[行号, 列号], [行号, 列号]]四种格式,当使用单元格名时不区分大小写。默认&quot;A1:B2&quot;
shift:[可选参数]填写&quot;up&quot;时(不区分大小写),删除区域的下方单元格向上移动,填写&quot;left&quot;时(不区分大小写),删除区域的右侧向左移动,填写None时,Excel根据区域的形状决定。默认None
isSave:[可选参数]操作完成立即保存。默认False
出参:
无
注意事项:
该命令不能单独使用,需配合 &quot;打开Excel&quot;命令(Excel.OpenExcel) 或&quot;绑定Excel&quot;命令(Excel.BindBook)一起使用才能正常使用,单独使用则会报错。
*********************************************/
&quot;&quot;&quot;
# 打开D:\1.xlsx
excelWorkBook = Excel.OpenExcel(r'D:\1.xlsx', visible=True, appType=&quot;Excel&quot;, pwd=&quot;&quot;, writePwd=&quot;&quot;)
# 删除Excel对象Sheet1工作表的A1:B2所在范围内的单元格
Excel.DeleteRange(excelWorkBook, sheet=&quot;Sheet1&quot;, cells=&quot;A1:B2&quot;, shift=None, isSave=False)
# 删除Excel对象Sheet1工作表的A1单元格,且右边的单元格向左补齐,且保存文档
Excel.DeleteRange(excelWorkBook, sheet=&quot;Sheet1&quot;, cells=&quot;A1&quot;, shift=&quot;left&quot;, isSave=True)
# 删除Excel对象Sheet1工作表的第2行第1列-第3行第3列范围内的单元格,其下方的单元格向上补齐
Excel.DeleteRange(excelWorkBook, sheet=&quot;Sheet1&quot;, cells=[[2, 1], [3, 3]], shift=&quot;up&quot;, isSave=False)</code></pre>