EXCEL:如何把26个字母替换为26个数字

把A对应1
B对应2
C对应3
.。。。。Z对应26
Sub 替换()
Dim r As Integer
For s = 0 To 25 Step 1
r = Asc("A") + s
Cells.Replace What:=Chr(r), Replacement:=s + 1
Next s
End Sub

假设字母在A列

在B1中输入或复制粘贴下列公式

=CODE(A1)-64

下拉填充

这样字母A-Z依次对应1-26数值

B1单元格写入公式

=IF(A1="","",CODE(A1)-64)  如果字母是小写的则公式改成 IF(A1="","",CODE(A1)-96)

或=IF(A1="","",COLUMN(INDIRECT(A1&1)))

再或=IF(A1="","",FIND(A1,"ABCDEFGHIJKLMNOPQRSTUVWXYZ")) 

 下拉填充公式

扩展资料:

Excel公式中的相对单元格引用(例如 A1)是基于包含公式和单元格引用的单元格的相对位置。如果公式所在单元格的位置改变,引用也随之改变。如果多行或多列地复制公式,引用会自动调整。默认情况下,新公式使用相对引用。例如,如果将单元格 B2 中的相对引用复制到单元格 B3,将自动从 =A1 调整到 =A2。

单元格中的绝对单元格引用(例如 $A$1)总是在指定位置引用单元格。如果公式所在单元格的位置改变,绝对引用保持不变。如果多行或多列地复制公式,绝对引用将不作调整。默认情况下,新公式使用相对引用,需要将它们转换为绝对引用。例如,如果将单元格 B2 中的绝对引用复制到单元格 B3,则在两个单元格中一样,都是 $A$1。

参考资料来源:百度百科-单元格

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-03-21
假设字母在A列
在B1中输入或复制粘贴下列公式
=CODE(A1)-64
下拉填充
这样字母A-Z依次对应1-26数值
第2个回答  2015-07-28
下面的代码不会替换公式中的字母:
--------------------------------
Sub i替换()
Dim a As Integer, i
a = Asc("A") - 1
For i = 1 To 26
Cells.SpecialCells(xlCellTypeConstants, 2).Replace Chr(a + i), i, xlPart
next i
end Sub

希望能够帮到您,
第3个回答  推荐于2016-06-20
下面的代码不会替换公式中的字母:
--------------------------------
Sub i替换()
Dim a As Integer, i
a = Asc("A") - 1
For i = 1 To 26
Cells.SpecialCells(xlCellTypeConstants, 2).Replace Chr(a + i), i, xlPart
Next i
End Sub本回答被提问者和网友采纳
第4个回答  2015-08-07
你想变成什么样的数,想变成你指定的数,还是变成ASCII码,我的是变成ASCII码,你可以在A1单元格里输入你想输的字母,在A2单元格里输入“=IF(LEN(M3)>0,CODE(M3),"")”即可求得ASCII码
相似回答