tdrpa.tdworker

数字员工的命令工具包


查找数据

<p>[TOC]</p> <h2>1.命令说明</h2> <p>在工作表指定的单元格范围中查找数据,返回查到的单元格</p> <h2>2.命令原型</h2> <pre><code>cellResult = Excel.Find(excelWorkBook, sheet=&amp;quot;Sheet1&amp;quot;, cells=&amp;quot;A1&amp;quot;, findValue=&amp;quot;&amp;quot;, retIndex=False, retAll=False, allMatch=False, matchCase=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>使用 &quot;打开Excel工作簿&quot;命令(Excel.OpenExcel) 或 &quot;绑定Excel工作簿&quot; 命令(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;">&quot;Sheet1&quot;</td> <td>如果使用字符串,则表示指定工作表的名字;使用数字,则表示指定工作表的顺序(例如:0、1、2代表从左边开始正数第1、2、3个工作表;-1、-2、-3代表从右边开始倒数第1、2、3个工作表)。默认&quot;Sheet1&quot;</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;">&quot;A1:B2&quot;</td> <td>搜索的单元格范围,支持单元格名如 &quot;A1&quot;或 &quot;A1:B1&quot;与行列列表如[行号, 列号]或[[行号, 列号], [行号, 列号]] 四种格式,当使用单元格名时不区分大小写。当只写一个单元格时,从该单元格开始搜索至此表最后有数据的地方。默认 &quot;A1&quot;</td> </tr> <tr> <td style="text-align: left;">findValue</td> <td style="text-align: left;">否</td> <td style="text-align: left;">string</td> <td style="text-align: left;">&quot;&quot;</td> <td>需要查找的数据内容。默认&quot;&quot;</td> </tr> <tr> <td style="text-align: left;">retIndex</td> <td style="text-align: left;">否</td> <td style="text-align: left;">bool</td> <td style="text-align: left;">False</td> <td>是否返回单元格索引,True返回 [行号,列号] 形式的单元格索引,False返回字母加数字的单元格名称。默认False</td> </tr> <tr> <td style="text-align: left;">retAll</td> <td style="text-align: left;">否</td> <td style="text-align: left;">bool</td> <td style="text-align: left;">False</td> <td>是否返回全部单元格,True返回列表包含所有查找到数据的单元格,False返回范围内第一个查找到数据的单元格。默认False</td> </tr> <tr> <td style="text-align: left;">allMatch</td> <td style="text-align: left;">否</td> <td style="text-align: left;">bool</td> <td style="text-align: left;">False</td> <td>搜索内容是否完全匹配。完全匹配True,部分匹配False。默认False</td> </tr> <tr> <td style="text-align: left;">matchCase</td> <td style="text-align: left;">否</td> <td style="text-align: left;">bool</td> <td style="text-align: left;">False</td> <td>搜索内容是否区分大小写字母。区分True,忽略False。默认False</td> </tr> </tbody> </table> <h2>4.返回结果</h2> <p>查找到的单元格(如:&quot;A1&quot; 或 [&quot;A1&quot;, &quot;B2&quot;] 或 [1, 1] 或 [[1, 1], [2, 2]])</p> <h2>5.运行实例</h2> <pre><code>&amp;quot;&amp;quot;&amp;quot; /*******************查找数据******************* 入参: excelWorkBook:[必选参数]使用 &amp;quot;打开Excel工作簿&amp;quot;命令(Excel.OpenExcel) 或 &amp;quot;绑定Excel工作簿&amp;quot; 命令(Excel.BindBook)返回的工作簿对象 sheet:[可选参数]如果使用字符串,则表示指定工作表的名字;使用数字,则表示指定工作表的顺序(例如:0、1、2代表从左边开始正数第1、2、3个工作表;-1、-2、-3代表从右边开始倒数第1、2、3个工作表)。默认&amp;quot;Sheet1&amp;quot; cells:[可选参数]搜索的单元格范围,支持单元格名如&amp;quot;A1&amp;quot;或&amp;quot;A1:B1&amp;quot;与行列列表如[行号, 列号]或[[行号, 列号], [行号, 列号]]四种格式,当使用单元格名时不区分大小写。当只写一个单元格时,从该单元格开始搜索至此表最后有数据的地方。默认&amp;quot;A1&amp;quot; findValue:[可选参数]需要查找的数据内容。默认&amp;quot;&amp;quot; retIndex:[可选参数]是否返回单元格索引,True返回[行号,列号]形式的单元格索引,False返回字母加数字的单元格名称。默认False retAll:[可选参数]是否返回全部单元格,True返回列表包含所有查找到数据的单元格,False返回范围内第一个查找到数据的单元格。默认False allMatch:[可选参数]搜索内容是否完全匹配。完全匹配True,部分匹配False。默认False matchCase:[可选参数]搜索内容是否区分大小写字母。区分True,忽略False。默认False 出参: 查找到的单元格(如:&amp;quot;A1&amp;quot; 或 [&amp;quot;A1&amp;quot;, &amp;quot;B2&amp;quot;] 或 [1, 1] 或 [[1, 1], [2, 2]]) 注意事项: 该命令不能单独使用,需配合 &amp;quot;打开Excel&amp;quot;命令(Excel.OpenExcel) 或&amp;quot;绑定Excel&amp;quot;命令(Excel.BindBook)一起使用才能正常使用,单独使用则会报错。 ****************************************************/ &amp;quot;&amp;quot;&amp;quot; # 打开D:\1.xlsx excelWorkBook = Excel.OpenExcel(r'D:\1.xlsx', visible=True, appType=&amp;quot;Excel&amp;quot;, pwd=&amp;quot;&amp;quot;, writePwd=&amp;quot;&amp;quot;) # 在Sheet1表格内搜索内容包含100的单元格,返回第一个找到的单元格 cellResult = Excel.Find(excelWorkBook, sheet=&amp;quot;Sheet1&amp;quot;, cells=&amp;quot;A1&amp;quot;, findValue=&amp;quot;100&amp;quot;, retIndex=False, retAll=False, allMatch=False, matchCase=False) print(cellResult) # 在Sheet1表格内搜索内容包含100的单元格,返回所有找到的单元格 cellResult = Excel.Find(excelWorkBook, sheet=&amp;quot;Sheet1&amp;quot;, cells=&amp;quot;A1&amp;quot;, findValue=&amp;quot;100&amp;quot;, retIndex=False, retAll=True, allMatch=False, matchCase=False) print(cellResult) # 在Sheet1表格的A1:E10范围内搜索数据包含字母&amp;quot;a&amp;quot;的单元格,不区分大小写,返回第一个找到的单元格,以单元格索引形式返回 cellResult = Excel.Find(excelWorkBook, sheet=&amp;quot;Sheet1&amp;quot;, cells=&amp;quot;A1:E10&amp;quot;, findValue=&amp;quot;a&amp;quot;, retIndex=True, retAll=False, allMatch=False, matchCase=False) print(cellResult) # 在Sheet1表格的A1:E10范围内搜索数据完全匹配字母&amp;quot;A&amp;quot;的单元格,区分大小写,返回所有找到的单元格,以单元格索引形式返回 cellResult = Excel.Find(excelWorkBook, sheet=&amp;quot;Sheet1&amp;quot;, cells=&amp;quot;A1:E10&amp;quot;, findValue=&amp;quot;A&amp;quot;, retIndex=True, retAll=True, allMatch=True, matchCase=True) print(cellResult)</code></pre>

页面列表

ITEM_HTML