ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[求助] 循环提取指定数据,且放入同一个单元格

[复制链接]

TA的精华主题

TA的得分主题

发表于 2015-7-8 13:52 | 显示全部楼层 |阅读模式
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 长春鱼鱼 于 2015-7-8 22:45 编辑

A1数据如下。更多例子请见附件:

1)如何把单元格里面的图片地址(.jpg)提取出来,且放到单元格B1,并用逗号隔开?重复的值只提取一次。
例子中,B1的值最后应该是:
f835b022-2c84-489b-91c4-4c951b4fbe2d.jpg,38ecb32f-efe0-47af-8d9c-2679f6a60f46.jpg,77f7aca8-87e7-48cd-8ed2-d94b5b12f125.jpg,04a6f879-58ad-4247-85ae-438ac62db3e5.jpg

2)如何把第3个冒号:后,第一个双引号里面的内容(红色标出)依次提取出来,且放到单元格C1,并用逗号隔开?重复的值只提取一次。
例子中,C1的值最后应该是:
173,175,10#Rhodo,366

3)如何把第3个冒号:后," "" "前的内容提取出来(红色标出),且放到相应图片的后面,用::隔开。重复的值只提取一次。所有值放到一个单元格D1.
例子中,D1的值最后应该是:
f835b022-2c84-489b-91c4-4c951b4fbe2d.jpg::173,38ecb32f-efe0-47af-8d9c-2679f6a60f46.jpg::175,77f7aca8-87e7-48cd-8ed2-d94b5b12f125.jpg::10#Rhodo,04a6f879-58ad-4247-85ae-438ac62db3e5.jpg::366
4) 如何把第4个冒号:后,}前的数据提取出来(绿色标出),且放到单元格E1里,用逗号隔开。重复的值只提取一次。
例子中,E1的值最后应该是:361385,361386,100014064,100014065

单元格A1数据:
"{""skuArray"": [{""价格"":""3.99"",""属性"":{""14"":""173"",""5"":""361385""},""大图14"":""f835b022-2c84-489b-91c4-4c951b4fbe2d.jpg"",""库存"":""999"",""商家编码"":""Fancy1081""},
{""价格"":""3.99"",""属性"":{""14"":""173"",""5"":""361386""},""大图14"":""f835b022-2c84-489b-91c4-4c951b4fbe2d.jpg"",""库存"":""999"",""商家编码"":""Fancy1081""},
{""价格"":""3.39"",""属性"":{""14"":""173"",""5"":""100014064""},""大图14"":""f835b022-2c84-489b-91c4-4c951b4fbe2d.jpg"",""库存"":""999"",""商家编码"":""Fancy1081""},
{""价格"":""3.99"",""属性"":{""14"":""173"",""5"":""100014065""},""大图14"":""f835b022-2c84-489b-91c4-4c951b4fbe2d.jpg"",""库存"":""999"",""商家编码"":""Fancy1081""},
{""价格"":""3.99"",""属性"":{""14"":""175"",""5"":""361385""},""大图14"":""38ecb32f-efe0-47af-8d9c-2679f6a60f46.jpg"",""库存"":""999"",""商家编码"":""Fancy1081""},
{""价格"":""3.99"",""属性"":{""14"":""175"",""5"":""361386""},""大图14"":""38ecb32f-efe0-47af-8d9c-2679f6a60f46.jpg"",""库存"":""999"",""商家编码"":""Fancy1081""},
{""价格"":""3.99"",""属性"":{""14"":""175"",""5"":""100014064""},""大图14"":""38ecb32f-efe0-47af-8d9c-2679f6a60f46.jpg"",""库存"":""999"",""商家编码"":""Fancy1081""},
{""价格"":""3.99"",""属性"":{""14"":""175"",""5"":""100014065""},""大图14"":""38ecb32f-efe0-47af-8d9c-2679f6a60f46.jpg"",""库存"":""999"",""商家编码"":""Fancy1081""},
{""价格"":""3.99"",""属性"":{""14"":""10#Rhodo"",""5"":""361385""},""大图14"":""77f7aca8-87e7-48cd-8ed2-d94b5b12f125.jpg"",""库存"":""999"",""商家编码"":""Fancy1081""},
{""价格"":""3.99"",""属性"":{""14"":""10#Rhodo"",""5"":""361386""},""大图14"":""77f7aca8-87e7-48cd-8ed2-d94b5b12f125.jpg"",""库存"":""999"",""商家编码"":""Fancy1081""},
{""价格"":""3.99"",""属性"":{""14"":""10#Rhodo"",""5"":""100014064""},""大图14"":""77f7aca8-87e7-48cd-8ed2-d94b5b12f125.jpg"",""库存"":""999"",""商家编码"":""Fancy1081""},
{""价格"":""3.99"",""属性"":{""14"":""10#Rhodo"",""5"":""100014065""},""大图14"":""77f7aca8-87e7-48cd-8ed2-d94b5b12f125.jpg"",""库存"":""999"",""商家编码"":""Fancy1081""},
{""价格"":""3.99"",""属性"":{""14"":""366"",""5"":""361385""},""大图14"":""04a6f879-58ad-4247-85ae-438ac62db3e5.jpg"",""库存"":""999"",""商家编码"":""Fancy1081""},
{""价格"":""3.99"",""属性"":{""14"":""366"",""5"":""361386""},""大图14"":""04a6f879-58ad-4247-85ae-438ac62db3e5.jpg"",""库存"":""999"",""商家编码"":""Fancy1081""},
{""价格"":""3.99"",""属性"":{""14"":""366"",""5"":""100014064""},""大图14"":""04a6f879-58ad-4247-85ae-438ac62db3e5.jpg"",""库存"":""999"",""商家编码"":""Fancy1081""},
{""价格"":""3.99"",""属性"":{""14"":""366"",""5"":""100014065""},""大图14"":""04a6f879-58ad-4247-85ae-438ac62db3e5.jpg"",""库存"":""999"",""商家编码"":""Fancy1081""}]}"





TA的精华主题

TA的得分主题

 楼主| 发表于 2015-7-8 13:54 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
忘了附上更多例子。

SAMPLE.zip

7.44 KB, 下载次数: 14

SAMPLES

TA的精华主题

TA的得分主题

发表于 2015-7-8 14:53 | 显示全部楼层
本帖最后由 hhjjpp 于 2015-7-8 15:33 编辑

test-h.rar (17.98 KB, 下载次数: 13)

TA的精华主题

TA的得分主题

发表于 2015-7-8 15:12 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
又要提取又要去重复,这样的东西还是用自定义函数吧,见附件 SAMPLE.zip (14.69 KB, 下载次数: 16)

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-7-8 16:04 | 显示全部楼层

好复杂的公式阿,分很多步呢。

不过,最关键的是,最后的数据,重复的没有删掉。

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-7-8 16:06 | 显示全部楼层
cmxxccxx 发表于 2015-7-8 15:12
又要提取又要去重复,这样的东西还是用自定义函数吧,见附件

能否贴下代码?打开了文档,代码是空的哦

多谢!

TA的精华主题

TA的得分主题

发表于 2015-7-8 16:08 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
长春鱼鱼 发表于 2015-7-8 16:06
能否贴下代码?打开了文档,代码是空的哦

多谢!

自定义函数
  1. Function aa(r As Range)
  2. s = ""
  3. ar = Split(r, ":")
  4. For i = 0 To UBound(ar) Step 1
  5.    br = Split(ar(i), ",")
  6.    For j = 0 To UBound(br)
  7.       If InStr(br(j), ".jpg") > 0 And InStr(s, br(j)) = 0 Then s = s & "," & br(j)
  8.    Next
  9. Next
  10. aa = Mid(s, 2)
  11. End Function
复制代码

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2015-7-8 16:17 | 显示全部楼层

看着好厉害啊啊,什么时候我也可以这样啊

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-7-8 16:37 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册

B1 值正确,多谢!

能否帮忙写下 C1 和 D1 的函数?我还看不懂代码,自己在你提供代码基础上改改,一直都不对。

多谢哈

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-7-9 08:22 | 显示全部楼层
有没有人帮忙看下单元格C1, D1, E1 数据怎么弄啊?

多谢呢!
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-12-22 17:11 , Processed in 0.047800 second(s), 17 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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