PowerShell 查询 Excel记录

简介:

豆子的兼职是澳洲代购(提供澳洲直邮或者国内供货,需要的可以联系j_0057.gif),很多时候需要当客服给客人发送快递单号,这些单号都是由仓库打包人员每天统计在EXCEL里面发送给我的。


比如,我有很多xlsx快递单号文档,格式大概是这样的

wKioL1dJGkKz1zlwAABPc2zGISE993.png


有的时候,为了查找某个订单号,需要查看QQ聊记录找到对应的发货单记录 然后还得找到当天对应的EXCEL表格,非常麻烦,往往为了查询一个单号需要折腾2分钟。为了解决这个查找的问题,豆子用PowerShell写了个简单的脚本进行处理。


首先一个好消息是PS5已经有很多现成的Excel模块了,因此再也不用通过ComObject来配置EXCEL了。毕竟ComObject属于一种过时的技术,而Powershell是基于.Net开发的,微软本身并不推荐使用任何方式来自动化Office,而且不会支持因此而出现的各种bug。 


我使用的是下面这个模块,他的原理是调用.Net对应的dll文件,因此效率和稳定性都远远超过ComObject的对象。

https://www.powershellgallery.com/packages/ImportExcel/2.2.4


PowerShell5 里面可以直接下载安装, 安装之后就可以直接调用了。

1
2
  
Install-Module -name importExcel


基本思路很简单,递归地查询xlsx文件所在的目录,导入所有的文件,然后根据条件过滤即可。 非常简单的脚本 但是节省了我不少的时间。


脚本如下


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
function  Get-DeliveryInfo
{
     [ CmdletBinding ()]
    
     Param
     (
         # Param1 help description
         
         [string]
         $user ,
         [string] $path = "c:\users\yli\Documents\出库记录\xlsx\*.xlsx" ,
         [string] $address = "*"
      )
      begin {}
      process {
      
      
      $result = Get-ChildItem  $path  -recurse|  Import-Excel |Where -Object {( $_ .姓名  -like  "*$user*" -and  ( $_ .地址  -like  "*$address*" )}
      
      
      
      }
      end {
      
      $result 
      }
}


比如说看看发往广西的姓陈的客户

wKioL1dJGUORdF50AAD0o4UR8VA505.png

成功!


为了方便媳妇等非IT人士使用,我又做了个图像界面


wKioL1dJH6bySN8NAAEDewkp8ms055.png



很开心能够利用简单的脚本解决自己生活中的实际问题。j_0028.gif






本文转自 beanxyz 51CTO博客,原文链接:http://blog.51cto.com/beanxyz/1784014,如需转载请自行联系原作者

目录
相关文章
|
6月前
|
关系型数据库 MySQL 数据库连接
python查询数据库的某个表,将结果导出Excel
python查询数据库的某个表,将结果导出Excel
143 0
|
3月前
|
关系型数据库 MySQL Shell
不通过navicat工具怎么把查询数据导出到excel表中
不通过navicat工具怎么把查询数据导出到excel表中
43 0
|
3月前
|
SQL
SQL SERVER 查询表结构,导出到Excel 生成代码用
SQL SERVER 查询表结构,导出到Excel 生成代码用
42 0
|
6月前
分享:2秒快速查询40万手机号码归属地,批量手机号码归属地查询可以导出excel表格,WPS表格查询手机号码归属地怎么操作,批量手机号码归属地批量查询软件,批量号码查询按省份和城市分类,按运移动号码电信号码联通号码分类整理
本文介绍了如何批量快速查询手机号码归属地并进行分类。首先,通过提供的百度网盘或腾讯云盘链接下载免费查询软件。其次,开启软件,启用复制粘贴功能,直接粘贴号码列表并选择高速查询。软件能在极短时间内(如1.76秒内)完成40多万个号码的查询,结果包括归属地、运营商、邮箱和区号,且数据准确。之后,可直接导出数据至表格,若数据超过100万,可按省份、城市及运营商分类导出。文章还附带了操作动画演示,展示全程流畅的处理大量手机号码归属地查询的过程。
311 0
分享:2秒快速查询40万手机号码归属地,批量手机号码归属地查询可以导出excel表格,WPS表格查询手机号码归属地怎么操作,批量手机号码归属地批量查询软件,批量号码查询按省份和城市分类,按运移动号码电信号码联通号码分类整理
|
6月前
|
Java 数据库连接 Apache
java实现查询某个表的数据导出excel
java实现查询某个表的数据导出excel
70 0
|
6月前
|
数据可视化 数据格式 索引
lindorm时序数据引擎可否将查询结果导成excel格式?
lindorm时序数据引擎可否将查询结果导成excel格式?
75 0
|
关系型数据库 MySQL 程序员
使用Mysql Navcat导出查询数据excel时出现数据丢失
使用Mysql Navcat导出查询数据excel时出现数据丢失
143 0
|
Java 数据库连接 Apache
使用POI把查询到的数据表数据导出到Excel中,一个表一个sheet.最详细!!!
使用POI把查询到的数据表数据导出到Excel中,一个表一个sheet.最详细!!!
168 1
使用POI把查询到的数据表数据导出到Excel中,一个表一个sheet.最详细!!!
|
SQL 数据挖掘 Python
Excel查询函数终结者
Excel查询函数终结者
133 0
Excel查询函数终结者