excel快递单号查询工具以及源码
Function kdcx(kd, orderid)
Dim Err, url, kdtime, link, Errcode, Status Select Case kd '此处支持的快递公司很多的
Case "申通"
kd = "shentong"
Case "圆通"
kd = "yuantong"
Case "优速"
kd = "yousu"
Case "龙邦"
kd = "longbang"
Case "城市"
kd = "cs"
Case Else
MsgBox "暂时不支持此快递,可以联系管理员添加!"
kdcx = "暂时不支持此快递"
Exit Function
End Select Set http = CreateObject("Microsoft.XMLHTTP")
url = "http://www.aikuaidi.cn/rest/?key=xxxx&order=" & orderid & "&id=" & kd & "&ord=desc&show=xml" http.Open "get", url, False
http.send
WebContent = http.responsetext
'MsgBox WebContent Set objDom = CreateObject("Microsoft.XMLDom")
objDom.async = False
objDom.LoadXML (WebContent)
If objDom.ReadyState > 2 Then
Set Item = objDom.getElementsByTagName("SyncResponseEntity") '读取页面上指定区域
For i = 0 To (Item.Length - 1)
Status = Item.Item(i).getElementsByTagName("status").Item(0).Text
If Status = 1 Then
kdcx = Status
Exit For
End If
Errcode = Item.Item(i).getElementsByTagName("errcode").Item(0).Text
' kdtime = Item.Item(i).getElementsByTagName("time").Item(0).Text
'link = Item.Item(i).getElementsByTagName("content").Item(0).Text
Next
Else
MsgBox "查询数据还未准备就绪。状态:" & objDom.ReadyState & "。"
End If
Set http = Nothing
Set objDom = Nothing Select Case Errcode
Case "0000"
Err = "无错误"
Case "0001"
Err = "传输参数格式有误"
Case "0002"
Err = "用户编号(uid)无效"
Case "0003"
Err = "用户被禁用"
Case "0004"
Err = "授权key无效"
Case "0005"
Err = "快递代号(id)无效"
Case "0006"
Err = "访问次数达到最大额度"
Case "0007"
Err = "查询服务器返回错误"
Case Else
Err = "查询出现未知错误"
End Select Select Case Status
Case "-1"
Status = "未更新的单号"
Case "0"
Status = "查询异常"
Case "1"
Status = "暂无记录"
Case "2"
Status = "在途中"
Case "3"
Status = "派送中"
Case "4"
Status = "已签收"
Case "5"
Status = "拒签收"
Case "6"
Status = "疑难件"
Case "7"
Status = "无效单"
Case "8"
Status = "超时单"
Case "9"
Status = "签收失败"
Case Else
Status = "快递状态未知情况"
End Select kdcx = Status
End Function Sub deletebutton() '删除工具栏和菜单的子程序
Dim tempbar As CommandBar '定义临时工具栏变量
On Error Resume Next '该语句用于忽略错误
Application.CommandBars("Menu Bar").Reset '重新设置Word XP的主菜单,即删除新建的菜单
For Each tempbar In Application.CommandBars '通过“For Each…Next”语句遍历Word XP所有的工具栏
If tempbar.Name = "快递查询" Then '如名称和新建的工具栏相同
tempbar.Visible = False '设置为不可视
tempbar.Delete '删除该工具栏
End If
Next
End Sub Sub addbutton() '创建工具栏和菜单并设置属性的子程序
Call deletebutton '调用删除工具栏和菜单的子程序
Set Obj_Toolbar = Application.CommandBars.Add("快递查询") '新建工具栏,“快递查询”代表工具栏的名称 Set Obj_Toolbar_button = Obj_Toolbar.Controls.Add(Type:=msoControlButton, ID:=1) '新建工具栏按钮
With Obj_Toolbar_button '设置按钮的属性
.Caption = "查询快递状态"
.Style = msoButtonIconAndCaption
.FaceId = 1018
.OnAction = "s123"
End With With Obj_Toolbar '设置工具栏的属性
.Visible = True '工具栏可视
.Enabled = True '工具栏可用
.Position = msoBarTop '工具栏置顶
End With End Sub Private Sub s123()
' Call yyy
lstRo = Cells(Rows.Count, 1).End(xlUp).Row
istart = InputBox("请你输入你想查询的开始行号", "开始行号", "2")
If istart = "" Then Exit Sub
iend = InputBox("请你输入你想查询的结束行号", "结束行号", lstRo)
If iend = "" Then Exit Sub With Cells(1, 11)
.Value = "快递状态"
.Font.Bold = True
.HorizontalAlignment = xlCenter '水平居中
.VerticalAlignment = xlCenter '垂直居中
End With For Ro = istart To iend
If Cells(Ro, 9) <> "" And Cells(Ro, 10) <> "" Then
Cells(Ro, 11).Value = kdcx(Cells(Ro, 9), Cells(Ro, 10))
End If
Next Ro
MsgBox "查询已经完毕!"
End Sub
能支持国内多家快递公司快递单号查询,顺丰快递、圆通快递、申通快递、ems等都支持。
key可以到快递单号查询网www.aikuaidi.cn上面申请。

调用参数:
| 参数名称 | 类型 | 是否必需 | 描述 |
| key | string | 是 | 授权密钥,点击此处 [ 快递API接口申请入口 ] 即可申请 |
| order | string | 是 | 快递单号,请注意区分大小写 |
| id | string | 是 | 快递代号,如:圆通(yuantong)、申通(shentong),点击此处 [ 查看完整快递代号 ] |
| ord | string | 可选 | 排序规则: asc:按时间旧到新排序, desc:按时间新到旧排序, 不传默认值:asc |
| show | string | 可选 | 返回类型: json:返回json字符串, xml:返回xml字符串, html:返回html字符串, 不传默认值:json |
excel快递单号查询工具以及源码的更多相关文章
- ajax实现快递单号查询
效果:(代码写的有点乱,自行修改就可以了) 源码: index.php <!DOCTYPE html> <html lang="en"> <head& ...
- 快递单号查询免费api接口(PHP示例)
快递单号查询API,可以对接顺丰快递查询,邮政快递查询,中通快递查询等.这些快递物流企业,提供了快递单号自动识别接口,快递单号查询接口等快递物流服务.对于电商企业,ERP服务企业,集成此接口到自己的软 ...
- python爬虫练手项目快递单号查询
import requests def main(): try: num = input('请输入快递单号:') url = 'http://www.kuaidi100.com/autonumber/ ...
- C#快递单号查询源码
源码本人测试过,没有啥问题,能查询快递单号,支持的快递还挺多,圆通快递.申通快递.韵达快递的都支持单号查询的,程序是通过向爱快递(www.aikuaidi.cn)接口传输参数来查询快递单号,我直接把代 ...
- php快递单号查询源码
贴下记录下php查询快递单号的源码,能查询各种快递的快递单号记录,中通.圆通快递.顺丰快递等都不是问题.只需要在 爱快递(www.aikuaidi.cn)上面申请一个快递key即可,下面把源码分享下, ...
- ECSHOP和SHOPEX快递单号查询百世快递插件V8.6专版
发布ECSHOP说明: ECSHOP快递物流单号查询插件特色 本ECSHOP快递物流单号跟踪插件提供国内外近2000家快递物流订单单号查询服务例如申通快递.顺丰快递.圆通快递.EMS快递.汇通快递.宅 ...
- ECSHOP和SHOPEX快递单号查询顺丰插件V8.6专版
发布ECSHOP说明: ECSHOP快递物流单号查询插件特色 本ECSHOP快递物流单号跟踪插件提供国内外近2000家快递物流订单单号查询服务例如申通快递.顺丰快递.圆通快递.EMS快递.汇通快递.宅 ...
- ECSHOP和SHOPEX快递单号查询申通插件V8.6专版
发布ECSHOP说明: ECSHOP快递物流单号查询插件特色 本ECSHOP快递物流单号跟踪插件提供国内外近2000家快递物流订单单号查询服务例如申通快递.顺丰快递.圆通快递.EMS快递.汇通快递.宅 ...
- ECSHOP和SHOPEX快递单号查询韵达插件V8.6专版
发布ECSHOP说明: ECSHOP快递物流单号查询插件特色 本ECSHOP快递物流单号跟踪插件提供国内外近2000家快递物流订单单号查询服务例如申通快递.顺丰快递.圆通快递.EMS快递.汇通快递.宅 ...
随机推荐
- (9/18)重学Standford_iOS7开发_动画、自动布局_课程笔记
最近开始实习,没多少时间更新了=_= 第九课: 1.上节课demo:Dropit完整实现 https://github.com/NSLogMeng/Stanford_iOS7_Study/commit ...
- xml 与 DataSet 互相转换
本文转载:http://www.cnblogs.com/30ErLi/archive/2010/09/21/1832694.html XmlDatasetConvert 该类提供了四种方法: 1.将x ...
- 单片机IO口驱动能力
以STM32的IO口为例,最大的输出电流和灌入电流在芯片手册上都有说明.单个IO口一般都是十几mA到几十mA,同时总的VDD电流也有限制,大概为150mA.所以单片机驱动外设时,如果不是信号型而是功率 ...
- [每日一题] 11gOCP 1z0-052 :2013-08-31 数据库的存储结构....................................................A8
转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/10784599 . 正确答案:A 将逻辑存储与物理存储分开是关系数据库范例的必要部分.关系数 ...
- MapReduce中的map个数
在map阶段读取数据前,FileInputFormat会将输入文件分割成split.split的个数决定了map的个数.影响map个数(split个数)的主要因素有: 1) 文件的大小.当块(dfs. ...
- Spring远端调用的实现-Spring Http调用的实现
1:Spring Http设计思想 最近在研究公司自己的一套rpc远程调用框架,看到其内部实现的设计思想依赖于spring的远端调用的思想,所以闲来无事,就想学习下,并记录下. 作为spring远端调 ...
- 随便说说removeFromSuperview方法
之前写过一篇关于removeFromSuperview方法处理的文章,写完后一直就没怎么更新这篇文章.这两天回过头来看看,感觉这篇文章有些地方写的不够严谨,而且还有一些自己理解错的地方,所以打算重写这 ...
- 怎样通过ajax提交数据
ajax的出现彻底改变了javascript命运,通过ajax可以直接向服务器提交数据,有两种方式: get方式,数据直接拼接在地址中 post方式,数据由data字段携带 post方式,data中是 ...
- Linq保留字含义
using System; using System.Query; using System.Collections.Generic; class app { static void Main() { ...
- enable cors in spring mvc with swagger
a. In controller add @CrossOrigin(origins = "http://localhost:8080") b. In mvc-servlet.xml ...