ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: adad321

[求助] 在海量数据中查到特殊文字(从没遇到过)

[复制链接]

TA的精华主题

TA的得分主题

发表于 2024-2-18 20:38 | 显示全部楼层
本帖最后由 wanghan519 于 2024-2-18 20:41 编辑
adad321 发表于 2024-2-18 20:09
for i in range(len(rng.value)):
    for j in range(len(rng.value)):
        try:

这段代码需要python环境,比如可以用wps在线表格做尝试


批注 2024-02-18 203646.jpg

TA的精华主题

TA的得分主题

发表于 2024-2-18 20:45 | 显示全部楼层
perfect131 发表于 2024-2-18 19:49
vbe 是936的原因 其实 可以用chrw来解决这种问题

主要是没搞懂为啥一个这种字符在vbe里变成了两个unicode,规律是啥
如果事先不知道有哪些不太好找出来

TA的精华主题

TA的得分主题

发表于 2024-2-18 21:12 | 显示全部楼层
wanghan519 发表于 2024-2-18 20:45
主要是没搞懂为啥一个这种字符在vbe里变成了两个unicode,规律是啥
如果事先不知道有哪些不太好找出来

应该是单元格编码是 utf-16的原因

2.png
3.png

评分

2

查看全部评分

TA的精华主题

TA的得分主题

发表于 2024-2-18 21:28 来自手机 | 显示全部楼层
perfect131 发表于 2024-2-18 21:12
应该是单元格编码是 utf-16的原因

原来如此
又搜到了utf16代理对:代理对由一对16位编码单元组成,分别位于高代理项(High Surrogate)和低代理项(Low Surrogate)的范围内。代理对的特征包括:

高代理项:位于范围U+D800至U+DBFF的16位编码单元,用于指示字符的高位。

低代理项:位于范围U+DC00至U+DFFF的16位编码单元,用于指示字符的低位。

这样就能用vba找到这种字符了

TA的精华主题

TA的得分主题

发表于 2024-2-19 04:22 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
adad321 发表于 2024-2-18 20:09
for i in range(len(rng.value)):
    for j in range(len(rng.value)):
        try:

根据大佬提供的信息,用vba写了个
为了逻辑清晰,每行找出第一个这种字符就退出了
如果要找出所有,需要注意前面的这种字符占2个位置,所以索引每次要减一


提取出的特殊文字.7z

15.08 KB, 下载次数: 10

评分

3

查看全部评分

TA的精华主题

TA的得分主题

发表于 2024-2-19 08:59 | 显示全部楼层
本帖最后由 kevinchengcw 于 2024-2-19 09:01 编辑

见楼下。。。。。。。。。。。。。。。

TA的精华主题

TA的得分主题

发表于 2024-2-19 09:00 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2024-2-19 11:19 | 显示全部楼层
kevinchengcw 发表于 2024-2-19 09:00
简单粗暴的解决方式

妙啊,code 63 我也想过
就是没有想到 asc 跟 ascw 同时用,学到了

TA的精华主题

TA的得分主题

发表于 2024-2-19 11:21 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
wanghan519 发表于 2024-2-18 21:28
原来如此
又搜到了utf16代理对:代理对由一对16位编码单元组成,分别位于高代理项(High Surrogate)和 ...

vba 用 gbk
4.png

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-2-23 15:44 | 显示全部楼层
wanghan519 发表于 2024-2-18 20:45
主要是没搞懂为啥一个这种字符在vbe里变成了两个unicode,规律是啥
如果事先不知道有哪些不太好找出来

实在抱歉,我没想到问题稍复杂了些,怪我过于小心了。
我说明一下,我的这些数据是用的GET方法的http请求抓出来的马家的订单数据,近两天也了解了些相当知识,因为请求头加不了编码的参,所以大概是响应数据出来后需要解码,毕竟我也是能力有限,嘿。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-9-30 00:24 , Processed in 0.033625 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表