Excel/VBA:基于同工作簿其他工作表单元格重命名表格标题行
批量将Sheet3列名替换为Sheet1指定单元格值的解决方案
VBA批量处理(推荐)
适合一次性完成14列的重命名操作,步骤如下:
- 打开目标工作簿,按下
Alt + F11打开VBA编辑器 - 右键左侧工程面板中的当前工作簿名称 → 插入 → 模块
- 粘贴以下代码,按
F5运行,或回到Excel界面添加表单按钮绑定该宏执行:
Sub RenameSheet3Columns() Dim wsSource As Worksheet Dim wsTarget As Worksheet Dim colIndex As Integer ' 定义源工作表(Sheet1)和目标工作表(Sheet3) Set wsSource = ThisWorkbook.Sheets("Sheet1") Set wsTarget = ThisWorkbook.Sheets("Sheet3") ' 遍历14列,替换列名(默认取Sheet1第1行的A1-N1单元格,可按需调整行号) For colIndex = 1 To 14 If wsSource.Cells(1, colIndex).Value <> "" Then wsTarget.Cells(1, colIndex).Value = wsSource.Cells(1, colIndex).Value End If Next colIndex MsgBox "列名更新完成!" End Sub
代码调整说明:
- 若Sheet1的下拉列表单元格不在第1行,比如是第3行,把代码中的
Cells(1, colIndex)改成Cells(3, colIndex)即可 - 如果工作表名称不是默认的"Sheet1"/"Sheet3",修改
Sheets("Sheet1")里的名称为实际表名
手动操作(适合临时单次使用)
依次复制Sheet1中14个下拉选择单元格的文本,粘贴到Sheet3对应列的表头单元格中。
内容的提问来源于stack exchange,提问作者TWH33
相关产品推荐
相关产品推荐

