如何为整行单元格内每个单元格的每一行内容添加字母编号
批量给单元格内多行内容添加连续字母编号的方法
两种方案按需选择即可,都适配不同单元格内选项行数不固定的场景,每个单元格独立从a)开始编号,不会跨单元格连号。
方案1:公式法(无需启用宏,适合Excel 365/2021及以上版本)
- 选中需要处理的整行单元格,先开启「自动换行」格式
- 在和第一个待处理单元格同行的空白列单元格中,输入以下公式:
=TEXTJOIN(CHAR(10),TRUE,CHAR(96+ROW(INDIRECT("1:"&LEN(A1)-LEN(SUBSTITUTE(A1,CHAR(10),""))+1)))&") "&TEXTSPLIT(A1,CHAR(10)))
注意:公式里的A1替换成你第一个待处理单元格的实际地址
- 按回车生成结果后,把单元格公式横向拖动,覆盖整行所有需要处理的列即可,生成效果和预期完全一致。
方案2:VBA宏法(全版本Excel兼容,处理后直接在原单元格生效)
- 打开需要处理的Excel文件,按
Alt+F11调出VBA编辑器 - 在左侧工程栏右键点击当前工作簿名称,选择「插入」-「模块」
- 把以下代码粘贴到弹出的代码编辑窗口:
Sub AddAlphaNumber() Dim processRng As Range, cel As Range Dim lineList As Variant, i As Long, outputText As String Set processRng = Application.InputBox("请框选需要处理的整行单元格范围", Type:=8) For Each cel In processRng If Trim(cel.Value) <> "" Then lineList = Split(cel.Value, Chr(10)) outputText = "" For i = LBound(lineList) To UBound(lineList) outputText = outputText & Chr(97 + i) & ") " & lineList(i) If i < UBound(lineList) Then outputText = outputText & Chr(10) Next cel.Value = outputText End If Next MsgBox "编号添加完成" End Sub
- 按
F5运行代码,在弹出的选框里拖动鼠标选中你要处理的整行单元格,点击确定即可自动完成所有处理。
预期效果参考
a) Doxazosin
b) Finasteride
c) Tadalafil
d) Tamsulosin
e) Silodosin

内容的提问来源于stack exchange,提问作者user2875004
相关产品推荐
相关产品推荐

