逛excelhome论坛时,有网友问到如何将公历自动转为农历。趁傍晚有点空闲时间,练一练手,特此记录,以便后期使用。

效果:

代码:

Function nongli(gongli_date)'函数说明:通过爬虫,得到农历信息,未使用正则。Dim HttpReq As ObjectDim datas, url, gongli_nian, gongli_yue, gongli_ri, flag1, flag2, tmp As StringDim pos1, pos2 As Integer '用于记录位置信息'1.获取年月日gongli_nian = Year(gongli_date)gongli_yue = Month(gongli_date)gongli_ri = Day(gongli_date)'2.设置爬虫Set HttpReq = CreateObject("MSXML2.XMLHTTP.6.0")url = "https://gonglinongli.bmcx.com/"  '网址datas = "gongli_nian=" & gongli_nian & "&gongli_yue=" & Right("0" & gongli_yue, 2) & "&gongli_ri=" & Right("0" & gongli_ri, 2) '参数HttpReq.Open "Post", url, FalseHttpReq.setRequestHeader "Content-Length", Len(datas)HttpReq.setRequestHeader "CONTENT-TYPE", "application/x-www-form-urlencoded; charset=utf-8"HttpReq.send datasIf HttpReq.Status = 200 Thentmp = HttpReq.responseTextEnd If'3.清理数据,拿到农历信息。注:因为正则需要添加库,有的同事电脑上不能直接用。因此,这里未使用正则,看起来一点都不高大上。flag1 = "<td bgcolor=" & Chr(34) & "#F5F5F5" & Chr(34) & " align=" & Chr(34) & "center" & Chr(34) & ">农历</td>"flag2 = "<td bgcolor=" & Chr(34) & "#F5F5F5" & Chr(34) & " align=" & Chr(34) & "center" & Chr(34) & ">生肖</td>"pos1 = InStr(tmp, flag1)pos2 = InStr(tmp, flag2)tmp = Mid(tmp, pos1 + Len(flag1) + 62, pos2 - pos1 - Len(flag2) - 81)pos1 = InStr(tmp, "<div")tmp = Mid(tmp, 1, pos1 - 1)tmp = Replace(tmp, " ", "")nongli = tmp
End Function

感谢这位宋哥大侠的文章。

【VBA研究】用XMLHTTP的Post功能抓取数据_vba 网抓post无法返回想要的数据_宋哥的博客-CSDN博客https://blog.csdn.net/iamlaosong/article/details/102914771写在最后:或许是我没操作对。CSDN好像挺看不起VBA的,代码块里面跟B有并的,就只有VB.net;在文章标签里面,也找到VBA。

EXCEL 自定义函数之公历转农历,VBA通过爬虫实现相关推荐

  1. VBA Excel 自定义函数不能调用成功的问题的解决方法

    VBA Excel 自定义函数不能调用成功的问题的解决方法 问题以及解决方案的列举(持续更新中) 问题以及解决方案的列举(持续更新中) 自定义函数是自动化各种Excel重复操作的重要函数,我们可以用它 ...

  2. EXCEL自定义函数无法运行的原因:可以在VBA里运行的函数,在EXCEL用自定义函数为什么报错?

    目录 1目标问题: 为什么VBA里,function可以运行的代码,在EXCEL用自定义函数,会返回错误值? 2 先说结论 2.1 最容易发生的原因 2.2 其他原因梳理 3  自定义函数返回值的情况 ...

  3. excel自定义函数添加和使用方法

    第一,excel自定义函数简介 Excel自带很多函数供使用,但有些问题用内置函数解决起来很复杂,甚至是无能为力,这时就可以利用VBA开发自定义函数. 第二,excel如何添加自定义函数 excel自 ...

  4. excel自定义函数的注释_打印Excel注释的自定义列表

    excel自定义函数的注释 If you've added comments to an Excel worksheet, you have a couple of built-in options ...

  5. Excel 自定义函数按单元格背景颜色/字体颜色实现计数或求和

    Excel 自定义函数按单元格背景颜色/字体颜色实现计数或求和 https://download.csdn.net/download/sea1_2/34881468

  6. python自定义函数求差_[VBA]发布一个计算桩号之差的Excel自定义函数(VBA)

    这是一个可以计算桩号之差(也就是得到长度)的Excel(或WPS)扩展函数,可以减少工程师在统计工程量时的工作量. 该函数具有一定的通用性.可以在MS Office和金山WPS上使用. 文末会给出使用 ...

  7. 语言建立一个学生籍贯管理簿_编写一个Excel自定义函数,身份证信息提取如探囊取物...

    观看视频更直观 我们建立信息表时不仅要输入性别.生日和年龄等信息,往往也需要输入身份证号码,而身份证号码中包含有籍贯.性别.生日和年龄等信息,从身份证号码中提取上述信息可以减少输入工作量,提高工作效率 ...

  8. 你所不知道的Excel自定义函数BUG

    使用VBA开发自定义函数,可以弥补Excel内置函数的不足,简化函数公式,但是需要注意实现同样功能,自定义函数的效率远远不如内置函数,所以不要试图重新发明轮子. 最近发现了一个自定义函数的BUG(也可 ...

  9. Excel - 自定义函数

    1. 问题: 假设我们在Excel中有以下需求: 你可以嵌套使用IF函数,判断每一个分数属于哪一个区间. 但是,4层IF会不会很容易出错:如果是5个区间,甚至是10个区间呢?嵌套使用10个IF不太现实 ...

最新文章

  1. 查询页面代码运行时间
  2. go 判断元素是否在slice_Go内置数据结构原理
  3. 最短Hamilton路径(状压dp)
  4. 《Swift开发实战》——导读
  5. junit No tests found matching Method
  6. 阿里CEO张勇:建立良好的消费环境是阿里20年来努力工作的方向
  7. 【BZOJ3924】[Zjoi2015]幻想乡战略游戏 动态树分治
  8. Model to Text工具Acceleo使用教程(六)——模板服务
  9. jquery事件绑定的几种用法
  10. ie和chrome浏览器下onproperty事件oninput onpropertychange的相应和相应属性的获取
  11. Android连点器(adb)
  12. 关于如何查找NXP S32K1xx系列单片机的封装信息和引脚定义
  13. 软件测试p1是什么级别,软件测试工程师岗位等级-20210729101938.doc-原创力文档
  14. 机器人聊天软件c#_用C#开发MSN插件程序(比如聊天机器人)
  15. OpenAI 开源语音识别模型 Whisper 初体验
  16. 20个高权重的博客列表
  17. NPN PNP 接近开关
  18. 入侵必练的CMD命令
  19. PS教程:用PS滤镜将人物照转成素描肖像
  20. 【PHP】json返回大括弧和中括弧,json返回{}和[]

热门文章

  1. 智慧门户、信创门户、国产门户、数字化门户,如何构建出七大特色亮点?
  2. windows 7 出现MTP usb设备驱动安装问题解决方法
  3. 【ICPC 2019 徐州Regional】
  4. 前端工作总结199-对ref的理解
  5. 红米10android auto,红米3 安卓10 原生体验 LineageOS17.1 ROOT
  6. vue获取用户本机ip方法
  7. java的 入门注意
  8. 如何用Stata完成(shui)一篇经济学论文(九):画线性图
  9. Python正则表达式中的转义问题\\\\\\\\\????(焯!什么鬼)
  10. Android中如何根据图片url路径来获取网络图片