在VBA中将数字转换为字母数字
我正在使用下面的代码作为一个更大代码的一部分,将一个数字转换为其字母数字相等的值,即1=a,2=B,等等。虽然这确实有效,但它是一个非常长的代码,我相信有更好的方法来实现这一点,希望你们能提供帮助在VBA中将数字转换为字母数字,vba,Vba,我正在使用下面的代码作为一个更大代码的一部分,将一个数字转换为其字母数字相等的值,即1=a,2=B,等等。虽然这确实有效,但它是一个非常长的代码,我相信有更好的方法来实现这一点,希望你们能提供帮助 Sub Convert() Time = Range("A1") If Time = 1 Then E = "A" Else If Time = 2 Then E = "B" Else If Time = 3 Then E = "C" Else If Time = 4 Th
Sub Convert()
Time = Range("A1")
If Time = 1 Then
E = "A"
Else
If Time = 2 Then
E = "B"
Else
If Time = 3 Then
E = "C"
Else
If Time = 4 Then
E = "D"
Else
If Time = 5 Then
E = "E"
Else
If Time = 6 Then
E = "F"
Else
If Time = 7 Then
E = "G"
Else
If Time = 8 Then
E = "H"
Else
If Time = 9 Then
E = "I"
Else
If Time = 10 Then
E = "J"
Else
If Time = 11 Then
E = "K"
Else
If Time = 12 Then
E = "L"
Else
If Time = 13 Then
E = "M"
Else
If Time = 14 Then
E = "N"
Else
If Time = 15 Then
E = "O"
Else
If Time = 16 Then
E = "P"
Else
If Time = 17 Then
E = "Q"
Else
If Time = 18 Then
E = "R"
Else
If Time = 19 Then
E = "S"
Else
If Time = 20 Then
E = "T"
Else
If Time = 21 Then
E = "U"
Else
If Time = 22 Then
E = "V"
Else
If Time = 23 Then
E = "W"
Else
If Time = 24 Then
E = "X"
Else
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
MsgBox E
End Sub
这是一种方式
Sub numberToLetter()
Dim Time As Integer
Dim E As String
Time = Range("A1")
If Time > 26 Then
E = Chr(Int((Time - 1) / 26) + 64) & Chr(((Time - 1) Mod 26) + 65)
Else
E = Chr(Time + 64)
End If
End Sub
注释
Chr
返回基于的字符这是一种方法
Sub numberToLetter()
Dim Time As Integer
Dim E As String
Time = Range("A1")
If Time > 26 Then
E = Chr(Int((Time - 1) / 26) + 64) & Chr(((Time - 1) Mod 26) + 65)
Else
E = Chr(Time + 64)
End If
End Sub
注释
Chr
返回基于的字符这是一种方法
Sub numberToLetter()
Dim Time As Integer
Dim E As String
Time = Range("A1")
If Time > 26 Then
E = Chr(Int((Time - 1) / 26) + 64) & Chr(((Time - 1) Mod 26) + 65)
Else
E = Chr(Time + 64)
End If
End Sub
注释
Chr
返回基于的字符这是一种方法
Sub numberToLetter()
Dim Time As Integer
Dim E As String
Time = Range("A1")
If Time > 26 Then
E = Chr(Int((Time - 1) / 26) + 64) & Chr(((Time - 1) Mod 26) + 65)
Else
E = Chr(Time + 64)
End If
End Sub
注释
Chr
返回基于的字符更简单、更可靠的方法是使用Excel已经提供的内容,这意味着“每个字母都与范围内的一个数字相关联”:
更简单、更可靠的方法是使用Excel已经提供的内容,这意味着“每个字母都与范围内的一个数字相关联”:
更简单、更可靠的方法是使用Excel已经提供的内容,这意味着“每个字母都与范围内的一个数字相关联”:
更简单、更可靠的方法是使用Excel已经提供的内容,这意味着“每个字母都与范围内的一个数字相关联”:
很有趣,谢谢。我不知道这些数字是从哪里来的,它们是什么mean@ChadPortman,我建议您阅读tospig添加的链接,以便更好地了解Chr()的功能。先生,我还有很多关于VBA的知识要学习。我能绕着大多数人转。但我开始谈论VBA可以做什么,我得到的任务超出了我的知识范围,所以你们可以帮助我:)很有趣,谢谢。我不知道这些数字是从哪里来的,它们是什么mean@ChadPortman,我建议您阅读tospig添加的链接,以便更好地了解Chr()的功能。先生,我还有很多关于VBA的知识要学习。我能绕着大多数人转。但我开始谈论VBA可以做什么,我得到的任务超出了我的知识范围,所以你们可以帮助我:)很有趣,谢谢。我不知道这些数字是从哪里来的,它们是什么mean@ChadPortman,我建议您阅读tospig添加的链接,以便更好地了解Chr()的功能。先生,我还有很多关于VBA的知识要学习。我能绕着大多数人转。但我开始谈论VBA可以做什么,我得到的任务超出了我的知识范围,所以你们可以帮助我:)很有趣,谢谢。我不知道这些数字是从哪里来的,它们是什么mean@ChadPortman,我建议您阅读tospig添加的链接,以便更好地了解Chr()的功能。先生,我还有很多关于VBA的知识要学习。我能绕着大多数人转。但我开始谈论VBA可以做什么,我得到的任务超出了我的知识范围,所以你们可以帮助我:)简洁明了;我不知道这个方法,但从现在起将使用它。这是一个很好的算法,但这只会给你更多的确定性,因为它利用了“每一列都可以表示为字母(a,B,C…)或数字(1,2,3…)Matteo在一天内不止一次地拯救了我们,简洁明了;我不知道这种方法,但从现在起将使用它。onYour的算法很好,但这只会给你更多的确定性,因为它利用了“每一列都可以表示为字母(a,B,C…)或数字(1,2,3…)Matteo在一天中不止一次地进行营救,简洁而漂亮;我不知道这个方法,但从现在起将使用它。这是一个很好的算法,但这只会给你更多的确定性,因为它利用了“每一列都可以表示为字母(a,B,C…)或数字(1,2,3…)Matteo在一天内不止一次地拯救了我们,简洁明了;我不知道这种方法,但从现在起将使用它。onYour的算法很好,但这只会给你更多的确定性,因为它利用了“每一列都可以表示为字母(a,B,C…)或数字(1,2,3…)Matteo在一天内不止一次拯救您的代码注释:为了避免出现多个
If
和End If
语句,您可以使用If。。。如果。。。如果。。。如果
语法,则结束。或者,选择大小写
,类似于选择大小写时间
,大小写1:E=“A”
,大小写2:E=“B”
,等等,直到结束选择
。代码上的注意事项:为了避免出现多个如果
和结束如果
语句,您可以使用如果。。。如果。。。如果。。。如果
语法,则结束。或者,选择大小写
,类似于选择大小写时间
,大小写1:E=“A”
,大小写2:E=“B”
,等等,直到结束选择
。代码上的注意事项:为了避免出现多个如果
和结束如果
语句,您可以使用如果。。。如果。。。如果。。。如果
语法,则结束。或者,选择大小写
,类似于选择大小写时间
,大小写1:E=“A”
,大小写2:E=“B”
,等等,直到结束选择
。代码上的注意事项:为了避免出现多个如果
和结束如果
语句,您可以使用如果。。。如果。。。如果。。。如果
语法,则结束。或者,选择案例
,类似于选择案例时间
,案例1:E=“A”
,案例2:E=“B”
,等等,直到结束选择
。