位置:首页 > 行业软件 > WPS表格选择性粘贴连接功能使用教程

WPS表格选择性粘贴连接功能使用教程

时间:2026-06-26  |  作者:318050  |  阅读:0

日常办公的重复输入烦恼

在日常办公中,你是否也遇到过这样的烦恼?

面对一列需要重复输入相同前缀或后缀的数据,比如下面这一串公司地址,每个单元格都要手动加上“广东省东莞市”,不仅枯燥,还特别容易出错。

WPS表格选择性粘贴连接功能使用教程_wishdown.com

假设需要输入以下内容:

  • 广东省东莞市全兴有限公司
  • 广东省东莞市宏运有限公司
  • 广东省东莞市中天有限公司
  • 广东省东莞市月满楼有限公司
  • 广东省东莞市兴又盛有限公式

因没有连接功能,只好将重复的字符重复输入,这无疑降低了工作效率。

其实,WPS表格内置的“连接”功能并不直观。

不过,好在我们有VBA这个强大的工具。今天,就分享一个实用的技巧:为WPS表格的右键菜单添加一个“选择性粘贴——连接”的专属功能,一键搞定批量连接,让效率飞起来。

解决思路

核心思路很明确:

  1. 用VBA编写一个宏,实现将复制的文本内容,批量连接到所选单元格区域原有内容的前面或后面。
  2. 将这个宏功能添加到单元格的右键菜单中,方便随时调用。

操作步骤

步骤1. 建立“选择性粘贴——连接”功能的宏

首先,确保你的WPS已安装并启用了VBA环境。

接着,我们按部就班来操作:

  1. 新建一个空白工作簿。
  2. 按下快捷键ALT+F11,打开VBA编辑器(VBE)。
  3. 点击菜单栏的【插入】→【模块】。
  4. 在新出现的模块代码窗口中,输入以下宏代码:
Sub 选择性粘贴_连接()
    Dim rng As String, NewSht As String, OldSht As String, texts, i As Byte, ans As Byte
    If ActiveSheet.ProtectContents Then MsgBox "工作表已保护,本程序拒绝执行!", 64, "提示": Exit Sub
    On Error GoTo endd
    rng = Selection.Address
    OldSht = ActiveSheet.Name
    Application.DisplayAlerts = False
    Worksheets.Add
    NewSht = ActiveSheet.Name
    Range("a1").Select
    ActiveSheet.Paste
    If ActiveSheet.UsedRange.Count > 1 Then
        MsgBox "只能连接单个单元格的值。", 64, "andysky"
        GoTo endd
    End If
    texts = Selection.Text
    Application.ScreenUpdating = True
    Sheets(OldSht).Select
    ans = InputBox("请选择连接于目标前还是连接于目标后。" & Chr(10) & "1:连接于目标之前;" _
    & Chr(10) & "2:连接于目标之后。", "连接方式", 1)
    For i = 1 To Selection.Count
        If ans = 1 Then Selection(i) = texts & Selection(i)
        If ans = 2 Then Selection(i) = Selection(i) & texts
    Next
endd:
    Worksheets(NewSht).Delete
End Sub

这段代码的作用是:

  • 获取你复制的内容。
  • 让你选择是加在目标单元格内容的前面还是后面。
  • 最后进行批量连接操作。

步骤2. 将宏功能加入右键菜单

光有宏还不够,得把它放到顺手的地方。

接下来,我们把它集成到右键菜单里:

  1. 在VBE中,使用快捷键CTRL+R调出“工程资源管理器”。
  2. 在左侧找到“ThisWorkbook”并双击打开。
  3. 在右侧的代码窗口中,输入以下两段代码。
Private Sub Workbook_Open()
    With Application.CommandBars("cell").Controls.Add(Type:=msoControlButton, before:=4, Temporary:=True)
        .Caption = "选择性粘贴_连接(&Paste)"
        .OnAction = "选择性粘贴_连接"
    End With
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Application.CommandBars("CELL").Reset
End Sub

第一段代码用于在打开工作簿时将功能添加到右键菜单。

第二段代码则用于关闭时恢复默认菜单,避免影响其他文件。

步骤3. 将工作簿另存为默认模板

为了让这个功能每次打开WPS都能用,我们需要把它保存为模板:

  1. 关闭VBE窗口,回到工作表界面。
  2. 点击左上角【文件】→【另存为】。
  3. 在“保存类型”处,务必选择“WPS表格模板文件”。
  4. 给它起个容易识别的名字,比如“我的右键连接工具”,然后保存。

WPS表格选择性粘贴连接功能使用教程_wishdown.com

步骤4. 测试效果

大功告成,现在来试试效果如何:

  1. 点击【文件】→【新建】,选择“本机上的模板”。
  2. 在列表中找到并双击你刚才保存的模板文件。

WPS表格选择性粘贴连接功能使用教程_wishdown.com

  1. 在新打开的工作表中,如图五所示输入数据。
  2. 复制单元格A9中的内容(即“广东省东莞市”)。
  3. 用鼠标选中需要添加前缀的区域A2:A7。

WPS表格选择性粘贴连接功能使用教程_wishdown.com

  1. 在选中的区域上单击右键,你会发现菜单里多了一个“选择性粘贴_连接”的选项,点击它。
  2. 此时会弹出一个对话框(图七),询问连接方式。输入“1”表示将复制的文本连接到目标内容之前,点击确定。

WPS表格选择性粘贴连接功能使用教程_wishdown.com

  1. 瞬间,A2:A7单元格的内容就全部加上了“广东省东莞市”,结果如图八所示,是不是非常快捷?

WPS表格选择性粘贴连接功能使用教程_wishdown.com

结束语

WPS表格支持VBA进行二次开发,这无疑是它强大灵活性的体现。

当默认功能无法满足我们一些特定的、重复性的需求时,自己动手用VBA打造一个小工具,往往能事半功倍。

希望这个“选择性粘贴——连接”的技巧,能切实帮你提升工作效率。

来源:整理自互联网
免责声明:文中图文均来自网络,如有侵权请联系删除,心愿游戏发布此文仅为传递信息,不代表心愿游戏认同其观点或证实其描述。

相关文章

更多

精选合集

更多

大家都在玩

热门话题

大家都在看

更多