提升工作效率:WPS AI与跨平台代码应用指南 点击使用AI助手 了解更多

发布于 2024-10-25 liusiyang 99 编辑

在快节奏的工作环境中,如何高效利用工具和代码来提升生产力是每个职场人必须面对的课题。本文将带你了解如何巧妙运用WPS AI以及VBA等跨平台代码,解决实际工作中的难题,并通过创新思维,实现办公自动化,让你在职场中脱颖而出。

😘

过去的某一日,在某个回答里抽风似的对某大神提了个脑抽的问题,大神还认真的回复了。

能找到以上问题的同学请提供下地址。



以上是本文的真实背景

在随后的日子里就不断的自我反思,为啥要去提这种脑抽的问题,大神回复了还能学点知识,结果大神老老实实的说没找到办法,那么这个坑就要我自己来填才行。

请教同事、找同学、问朋友,经历了周围人看我像神经病(不好好工作干这些莫名其妙的事)后,终于下定决心请教AI吧。

首先想到的当然是WPS AI,但是从社区的各种提问里,发现在WPS表格里提的问题只要不是请它写公式,WPS AI就回答不出来,或者答非所问,就像曾经的考试一样,以为只要不留空,老师就不敢打零分!

随后,苦苦思考问谁呢!

💡

要不试试WPS 文字,这里面的AI说不定能解决表格的问题呢!

果然!

果然!!

果然在文字AI有意想不到的回答!!!

🔔

AI跨界也有不错的效果,表格AI无法解决的可以到文字AI来问问!

随后就同一个问题咨询了BingyiyanGemini,都有类似又不完全相同的答案。

单元格B3:K22中有4个随机单元格被占用,需要在这个范围内或其他指定范围的空单元格内填充进指定字符+阿拉伯数字序号,譬如填充WPS 1、WPS 2、WPS 3这种,序列前的字符以及需要填充的范围可在弹窗内填写,从左到右从上到下的排序,遇到被占用的单元格就跳过继续排序直到B3:K22或被指定的范围被填充满,如何写vba代码以达到需求

各位同学们也可以就以上问题去请你们手上的各类AI回答,特别是跨界的。

以下是网页版AI的回答,各位可以尝尝:

Bing Ai

文心一言

Gemini

在比较了四大品牌AI,将代码交叉提问验证,最后还真的搞出了本文开头的效果,先看图

社区很多人都知道我的是Mac系统,这次特地借了同事的Windows电脑录制的动画,就是为了验证这段代码在WPS里可以运行

有同学可能会好奇,为啥不用jsa,非得用vba呢!

这可能是我的工作原因,做出的东西需要考虑跨平台、跨设备、跨软件,jsa在M牌的office里用不了啊。领导明明用office的,给他发个文档还要求领导装个WPS,说不定随后领导就把我优化了。

首先本人对代码是两眼一抹黑,纯拿来主义。AI给一段就复制一段,用不了就换个AI问是啥原因,并让AI修改,接着复制过来继续用。学不会也不想学,毕竟就想做个老司机,哪知道非要让学车前去学造车原理,这是什么道理!但是代码还是要给大家呈现的,先看代码

模块一

Sub 空格填充序号()
Dim rng As Range
Dim cell As Range
Dim num As Long
Dim emptyCells As Collection
Set emptyCells = New Collection

' 定义要填充的范围
Set rng = ThisWorkbook.Sheets("Sheet1").Range("B3:K22")

' 收集所有空单元格
For Each cell In rng
If IsEmpty(cell.Value) Then
emptyCells.Add cell
End If
Next cell

' 填充数字
num = 1
For Each cell In emptyCells
cell.Value = num
num = num + 1
Next cell

' 清理
Set emptyCells = Nothing
End Sub

模块二

Sub 空格指定字符序号填充()
Dim rng As Range
Dim cell As Range
Dim num As Long
Dim prefix As String

' 定义前缀和起始序号
prefix = "WPS "
num = 1

' 定义要填充的范围
Set rng = ThisWorkbook.Sheets("Sheet1").Range("B3:K22")

' 遍历范围中的每个单元格
For Each cell In rng
' 检查单元格是否为空
If IsEmpty(cell.Value) Then
' 在空单元格中填充前缀和序号
cell.Value = prefix & num
' 序号递增
num = num + 1
End If
Next cell
End Sub

模块三

Sub 指定单元格范围内填充指定字符()
Dim rng As Range
Dim cell As Range
Dim prefix As String
Dim startNum As Long
Dim inputRange As String
Dim ws As Worksheet

' 获取用户输入的序列前缀
prefix = InputBox("请输入序列前的字符:", "序列前缀")
If prefix = "False" Then Exit Sub ' 用户点击了取消

' 获取用户输入的需要填充的范围
inputRange = InputBox("请输入需要填充的范围(例如:B3:K22):", "填充范围")
If inputRange = "False" Then Exit Sub ' 用户点击了取消

' 获取工作表对象
Set ws = ThisWorkbook.Sheets("Sheet1") ' 确保这里是你的工作表名称

' 根据用户输入创建范围对象
On Error Resume Next ' 如果范围无效,则忽略错误
Set rng = ws.Range(inputRange)
On Error GoTo 0 ' 恢复正常的错误处理

If rng Is Nothing Then
MsgBox "无效的范围输入!"
Exit Sub
End If

' 初始化序号
startNum = 1

' 遍历范围中的每个单元格
For Each cell In rng
' 检查单元格是否为空
If IsEmpty(cell.Value) Then
' 在空单元格中填充前缀和序号
cell.Value = prefix & startNum
' 序号递增
startNum = startNum + 1
End If
Next cell

' 通知用户操作完成
MsgBox "范围已填充完成!"
End Sub

随后就是各种欢乐的测试


虽然本人发帖喜欢开开心心,不喜欢那么严肃

但还是有一些话不得不说

社区中回答问题要过脑,不要随意水贴、不要随意怼人不然就像我这种给自己挖坑,填了坑还好说,填不上不知道会不会成为心魔。


最后就是发散思维:

1️⃣

︎以上案例中的填充能不能将序号倒序?

2️⃣

︎以上案例中的填充能不能将阿拉伯数字的序号换为其他的比如英文字母的序号?

3️⃣

︎以上案例中的填充能不能从横向变为竖向?

4️⃣

以上案例中的填充能不能在填充前,选定范围后(手动填写范围还是有点眼花)用弹出窗口随意指定正序/倒序、横向/竖向、序号类型等?

通过本文的介绍,你将掌握WPS AI的使用技巧,学会如何在不同平台间迁移和应用代码,从而在日常工作中节省时间,提高效率。同时,文章中提供的案例和思路将激发你的创新灵感,帮助你在面对复杂问题时,能够灵活运用各种工具和代码,找到最佳解决方案。

原文链接:https://bbs.wps.cn/topic/19550

上一篇: WPS从入门到熟练的快速指南
下一篇: 提升工作效率:WPS文件分享与同步的高效技巧
相关文章