读取区域
<p>[TOC]</p>
<h2>1.命令说明</h2>
<p>读取工作表中指定单元格范围的值,返回二维列表</p>
<h2>2.命令原型</h2>
<pre><code>rangeValue = Excel.ReadRange(excelWorkBook, sheet=&quot;Sheet1&quot;, cells=&quot;A1:B1&quot;, retStr=False, excludeEndBlankRows=False, excludeEndBlankColums=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:B1"</td>
<td>读取的单元格范围,支持单元格名如"A1"或"A1:B1"与行列列表如[行号, 列号]或[[行号, 列号], [行号, 列号]]四种格式,当使用单元格名时不区分大小写。当只写一个单元格时,从该单元格开始搜索至此表最后有数据的地方。默认"A1:B2"</td>
</tr>
<tr>
<td style="text-align: left;">retStr</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">bool</td>
<td style="text-align: left;">False</td>
<td>选择True,则返回内容与Excel单元格中显示的内容一致,且始终以字符串形式返回;选择否,则返回内容会根据数据类型自动转换,如0.1返回数值0.1而不是字符串 "0.1"。默认False</td>
</tr>
<tr>
<td style="text-align: left;">excludeEndBlankRows</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">bool</td>
<td style="text-align: left;">False</td>
<td>如果为True,读取范围内,从最后一行开始倒序检查,如果该行全是空值,则排除该行,直到发现非全空值的行停止检查。默认False</td>
</tr>
<tr>
<td style="text-align: left;">excludeEndBlankColums</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">bool</td>
<td style="text-align: left;">False</td>
<td>如果为True,读取范围内,从最后一列开始倒序检查,如果该列全是空值,则排除该列,直到发现非全空值的列停止检查。默认False</td>
</tr>
</tbody>
</table>
<h2>4.返回结果</h2>
<p>指定单元格范围的值(二维列表)</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;
retStr:[可选参数]选择True,则返回内容与Excel单元格中显示的内容一致,且始终以字符串形式返回;选择否,则返回内容会根据数据类型自动转换,如0.1返回数值0.1而不是字符串&quot;0.1&quot;。默认False
excludeEndBlankRows:[可选参数]如果为True,读取范围内,从最后一行开始倒序检查,如果该行全是空值,则排除该行,直到发现非全空值的行停止检查。默认False
excludeEndBlankColums:[可选参数]如果为True,读取范围内,从最后一列开始倒序检查,如果该列全是空值,则排除该列,直到发现非全空值的列停止检查。默认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;)
# 读取从单元格A1开始整个表格的值,数据以实际类型返回,不排除最后面的连续空行、空列
rangeValue = Excel.ReadRange(excelWorkBook, sheet=&quot;Sheet1&quot;, cells=&quot;A1&quot;, retStr=False, excludeEndBlankRows=False, excludeEndBlankColums=False)
print(rangeValue)
# 读取从单元格A1开始整个表格的值,数据以字符串类型返回,排除最后面的连续空行、空列
rangeValue = Excel.ReadRange(excelWorkBook, sheet=&quot;Sheet1&quot;, cells=&quot;A1&quot;, retStr=True, excludeEndBlankRows=True, excludeEndBlankColums=True)
print(rangeValue)</code></pre>