WPS的JS宏如何实现全文件路径字符串中截取文件名(excel)

从全文件路径的字符串中,截取文件名称,例如:

全文件路径字符串为:C:\Windows\System32\drivers\acpi1.sys

需要截取文件名:acpi1.sys

方法如下:

1、简单的方式:把全文件路径字符串拷贝,放置在Excel表的C列。鼠标点击D列后,输入如下公式:

=RIGHT(C2,LEN(C2)-FIND("@",SUBSTITUTE(C2,"\","@",LEN(C2)-LEN(SUBSTITUTE(C2,"\","")))))

2、利用WPS AI的功能,输入如下指令:提取C列最右边分隔符为\后的字符串

WPS AI 可以直接给出相应的公式:=RIGHT(C2,LEN(C2)-FIND("@",SUBSTITUTE(C2,"\","@",LEN(C2)-LEN(SUBSTITUTE(C2,"\","")))))

这个功能非常有用,不过需要你的描述很精准,另一个需要多金,这个功能有一定的免费期,后续要使用就要收费了。

3、批量获取文件地址,使用JS宏编程如下:

|----|-------------------------------------------|-----|
| 序号 | 文件地址 | 文件名 |
| 1 | C:\Windows\System32\drivers\acpi1.sys | |
| 2 | C:\Windows\System32\drivers\acpi2.sys | |
| 3 | C:\Windows\System32\drivers\acpi3.sys | |
| 4 | C:\Windows\System32\drivers\acpi4.sys | |

实现上述表格D列的文件名获取,代码如下:

复制代码
for(i=2;i<=5;i++)
{
		//截取提取C列最右边分隔符为\后的字符串
		txt = "=RIGHT(C"+ i +",LEN(C"+ i +")-FIND(\"@\",SUBSTITUTE(C"+ i +",\"\\\",\"@\",LEN(C"+ i +")-LEN(SUBSTITUTE(C"+ i +",\"\\\",\"\")))))";
		Range("D"+ i).Formula = txt;//
}

运行后,结果显示如下图:

|----|-------------------------------------------|-----------|
| 序号 | 文件地址 | 文件名 |
| 1 | C:\Windows\System32\drivers\acpi1.sys | acpi1.sys |
| 2 | C:\Windows\System32\drivers\acpi2.sys | acpi2.sys |
| 3 | C:\Windows\System32\drivers\acpi3.sys | acpi3.sys |
| 4 | C:\Windows\System32\drivers\acpi4.sys | acpi4.sys |

相关推荐
1024奇点3 小时前
【仓颉语言入门 · 第二篇 第 22 课】
开发语言·ide·开源
Warren2Lynch4 小时前
C4 模型详解:利用 Visual Paradigm 可视化软件架构的综合指南
开发语言·uml
Knight_AL4 小时前
Java 文件下载时文件名中的 `#` 被转换成 `%23`?一次 URL 编码与解码问题排查
java·开发语言
FRing035 小时前
vue2干货总结2(v-bind、v-for、v-model、指令修饰符、v-bind操作class和style)
开发语言·前端·vue.js·vue2
幸运小猿5 小时前
模拟慢上传-处理超时重试image 丢失线上问题
前端·javascript·html
by209996 小时前
C++ 智能指针的所有权与使用
开发语言·c++·经验分享
砚底藏山河6 小时前
python量化自定义周期 K 线合成
java·开发语言·数据库·python·金融
IT召唤狮6 小时前
开源企业级零信任项目Pangolin,零信任能挡住PHP核弹漏洞吗?
开发语言·开源·php
知已难寻6 小时前
03 · OpenStack的计算管理 Nova
运维·服务器·开发语言·云原生·云计算·openstack·开源软件
Rover Ramble6 小时前
C++ 用互斥锁实现读写锁
开发语言·c++