求编写绑定快捷键的Excel VBA宏:将单元格内容追加至上方单元格
实现选中单元格内容追加到上方单元格的Excel VBA宏
下面是直接可用的宏代码,能自动适配任意选中的单个单元格:
Sub AppendToAboveCell() ' 限制只能选中单个单元格 If Selection.Cells.Count <> 1 Then MsgBox "请只选中一个单元格!", vbExclamation Exit Sub End If ' 第一行没有上方单元格,直接提示 If Selection.Row = 1 Then MsgBox "该单元格上方没有单元格!", vbExclamation Exit Sub End If Dim aboveCell As Range Set aboveCell = Selection.Offset(-1, 0) ' 获取当前单元格正上方的单元格 ' 把当前单元格内容追加到上方单元格末尾,中间用空格分隔 aboveCell.Value = aboveCell.Value & " " & Selection.Value ' 如果需要追加后清空当前单元格,取消下面一行的注释(删掉前面的单引号) ' Selection.Value = "" End Sub
操作步骤
1. 添加宏到你的Excel文件
- 打开Excel,按下
Alt + F11打开VBA编辑器 - 在左侧面板找到你的工作簿名称,右键点击它 → 插入 → 模块
- 将上面的代码粘贴到弹出的模块编辑窗口里
- 按下
Ctrl + S保存,注意要选择「Excel启用宏的工作簿(*.xlsm)」格式,不然宏会丢失
2. 绑定键盘快捷键
- 返回Excel主界面,点击左上角「文件」→ 选项 → 自定义功能区
- 点击窗口底部「键盘快捷方式」区域的「自定义...」按钮
- 在「类别」列表里选「宏」,右边就能看到我们刚添加的
AppendToAboveCell - 在「请按新快捷键」输入框里按下你想用的组合键(比如
Ctrl + Shift + A),点击「指定」 - 最后点击「关闭」,快捷键就绑定好了
小调整
如果不需要在追加内容之间加空格,把代码里的" "改成""就行;要是希望追加完成后清空当前单元格,把代码里最后一行的单引号删掉即可。
内容的提问来源于stack exchange,提问作者Joseph Adache
相关产品推荐
相关产品推荐

