wps - 使用宏来为每行标记序号

文章介绍了如何利用WPS宏和VBA编程来自动给文档的每个段落添加行号。通过宏录制和代码编写,用户可以高效地处理文档,避免手动添加序号的繁琐工作。代码示例展示了一个名为AddNumbersToDocument的子程序,该程序遍历文档段落,非空段落前插入行号。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在WPS中遇到需要加序号的虽然可以用项目符符号来标注在这里插入图片描述# 但或许用宏更厉害一些

WPS 的宏是一种自动化工具,可以通过编写宏代码来自动执行一些操作,例如创建和编辑文档、打印、格式化等。

WPS 宏的编写可以使用 VBA(Visual Basic for Applications)语言,这是一种与 Visual Basic 类似的编程语言。可以使用 WPS 的“宏录制器”功能来记录在 WPS 文档中执行的操作,然后将其转换为 VBA 代码,以便以后再次执行相同的操作。此外,也可以手动编写 VBA 代码来实现更复杂的功能。(我这里就直接改了代码,或许自定义性更强!也是了解一下VBA这门编程语言)

要使用 WPS 宏,需要先打开“开发工具”选项卡,然后选择“宏”选项,即可访问 WPS 宏编辑器。在宏编辑器中,可以编写、编辑和运行宏代码,并将其保存到 WPS 文档或模板中,以便以后重复使用。
1、设置里搜索录制宏并点击:
在这里插入图片描述
2、可以定制宏的名称以及宏的范围并点击在这里插入图片描述
3、视图 --》VB 编辑器在这里插入图片描述
刚进来时候会是只有宏名称,我这里是写好的一段可以实现对每行标记序号
在这里插入图片描述
以下为每行解释:

Sub AddNumbersToDocument()

定义一个子程序,它将添加行号到当前激活的Word文档中的每个段落。可以单击运行也可以双击矩形框处
在这里插入图片描述

Dim doc As Document
Set doc = ActiveDocument

声明一个变量’ doc ',它是Word文档对象类型(“Document”)。使用“ActiveDocument”函数设置它为当前激活的文档。这意味着此代码将只处理当前打开和激活的Word文档。

Dim i As Long
Dim lineNumber As Long

声明两个变量’i’和’lineNumber’,它们都是长整型(Long)。

For i = 1 To doc.Paragraphs.Count

使用for循环遍历当前文档中所有的段落。'doc.Paragraphs.Count’返回文档中所有段落数量。

    If (doc.Paragraphs(i).Range.Characters(1) <> vbCr) Then

判断每个段落的第一个字符是否为回车符(vbCr),如果不是,则表示该段落不是空行。

        doc.Paragraphs(i).Range.InsertBefore (lineNumber + 1 & "、 ")

在每个非空段落前插入一个行号。这里使用InsertBefore方法,在段落的范围之前插入行号,‘lineNumber+1’指的是当前段落的行号,’&‘是连接符,’“、”'是一个中文标点符号,表示行号和段落之间的分隔符。

        lineNumber = lineNumber + 1

递增’lineNumber’以便为下一个非空段落添加正确的行号。

    End If
Next i

End Sub
结束if语句,并进入下一项循环,处理文档中下一个段落。

效果:

在这里插入图片描述

完整代码

Sub AddNumbersToDocument()
    Dim doc As Document
    Set doc = ActiveDocument
    
    Dim i As Long
    Dim lineNumber As Long
    
    For i = 1 To doc.Paragraphs.Count
        If (doc.Paragraphs(i).Range.Characters(1) <> vbCr) Then
            doc.Paragraphs(i).Range.InsertBefore (lineNumber + 1 & "、 ")
            lineNumber = lineNumber + 1
        End If
    Next i
End Sub

WPS表格中使用VBA(Visual Basic for Applications)来为每一行自动追加固定的值或偏移量,可以按照以下步骤操作: 1. **打开VBA编辑器**: - 点击WPS表格菜单栏的“开发”选项,找到并点击“Visual Basic”,或者按下快捷键`Alt + F11`进入。 2. **创建或打开**: - 如果你想从头开始,可以在VBE工作窗口顶部的新建一个模块(Module),然后编写代码。 - 如果已经有现成的,可以直接在此模块中编辑。 3. **编写追加固定值的代码**: 使用以下基本结构: ```vba Sub AppendValueToRows(Range As Range, ValueToAdd As Variant) For Each Row In Range.Rows Row.Cells(1, 1).Value = Row.Cells(1, 1).Value & ValueToAdd '假设第一列有数据,这里追加到第一个单元格 Next Row End Sub ``` 这段代码会循环遍历指定范围内的每一行,在每个单元格的开头追加给定的值。 4. **设置偏移量**: 如果需要偏移量而不是固定值,可以用当前单元格的值加上偏移量: ```vba Sub ApplyOffsetToRows(Range As Range, Offset As Long) For Each Row In Range.Rows Row.Cells(1, 1).Value = Row.Cells(1, 1).Value + Offset Next Row End Sub ``` 5. **运行**: - 双击名来直接运行它,或者在VBA编辑器中选择"立即执行"(`F5`)。 6. **应用到特定范围**: 在上述代码中,将`Range`参数设置为你想要添加值或偏移量的具体行范围,例如 `Range("A1:C10")`。 记得保存你的,下次打开文档时可以直接调用。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冷风扇666

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值