求助:编写Excel VBA代码实现点击Add Record按钮添加数据至表格
VBA实现录入区数据移至表格下一行的解决方案
前提说明
假设你的录入区是固定单元格(比如B2:D2),表格数据从B5开始(首行为表头),你可以根据实际单元格范围修改代码里的地址。
完整VBA代码
Sub AddRecordToTable() Dim ws As Worksheet Dim inputRange As Range Dim tableLastRow As Long Dim targetRow As Long ' 指定操作的工作表 Set ws = ThisWorkbook.Worksheets("TPE Report") ' 定义录入区范围(根据实际需求修改) Set inputRange = ws.Range("B2:D2") ' 找到表格的最后一行(假设表格从B列开始) tableLastRow = ws.Cells(ws.Rows.Count, "B").End(xlUp).Row ' 目标行是表格最后一行的下一行 targetRow = tableLastRow + 1 ' 复制录入区数据到目标行 inputRange.Copy ws.Cells(targetRow, "B") ' 清空录入区(可选,按需保留) inputRange.ClearContents End Sub
代码关键部分解释
Set ws = ThisWorkbook.Worksheets("TPE Report"):锁定操作的工作表,避免切换工作表时出现错误tableLastRow = ws.Cells(ws.Rows.Count, "B").End(xlUp).Row:从B列底部向上查找最后一个有数据的行,精准定位表格末尾inputRange.Copy ws.Cells(targetRow, "B"):将录入区数据复制到表格的下一行起始位置inputRange.ClearContents:复制完成后清空录入区,方便下一次数据录入
绑定按钮步骤
- 打开Excel的「开发工具」选项卡,点击「插入」→ 选择「按钮(表单控件)」
- 在工作表上绘制按钮,弹出的宏选择窗口中选中
AddRecordToTable - 修改按钮显示文字为「Add Record」,完成设置后点击按钮即可执行操作
内容的提问来源于stack exchange,提问作者DDJE
相关产品推荐
相关产品推荐

