前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ExcelVBA把输入数字转化为大写字母

ExcelVBA把输入数字转化为大写字母

作者头像
哆哆Excel
发布2022-10-25 13:51:53
9270
发布2022-10-25 13:51:53
举报
文章被收录于专栏:哆哆Excel

问题:我们在Excel中的界面中列是用字母ABCD....显示的,当然在程序运行中也可以用数字,所以变出现了数字与字母互换的问题

=====以下是学习收集的代码====

代码语言:javascript
复制
'代码一:
Public Sub NumberToUpperCase1()
    Dim x As Variant, y As String
    x = InputBox("请输入数字")
    If IsNumeric(x) And x < Columns.Count Then
        y = Replace(Cells(1, Val(x)).Address(0, 0), "1", "")
        MsgBox "数字" & x & "转化为列标为:" & y
    Else
        MsgBox "输入的数据类型有误或超出范围。"
    End If
End Sub

.

代码语言:javascript
复制

'代码二:
Public Sub NumberToUpperCase2()
    Dim x As Variant, y As String
    x = InputBox("请输入数字")
    If IsNumeric(x) And x < Columns.Count Then
        y = Left(Cells(1, Val(x)).Address(0, 0), Len(Cells(1, Val(x)).Address(0, 0)) - 1)
        MsgBox "数字" & x & "转化为列标为:" & y
    Else
        MsgBox "输入的数据类型有误或超出范围。"
    End If
End Sub

.

代码语言:javascript
复制

'代码三:
Public Sub NumberToUpperCase3()
    Dim x As Variant, y As String
    x = InputBox("请输入数字")
    If IsNumeric(x) And x < Columns.Count Then
        y = Mid(Cells(1, Val(x)).Address(0, 0), 1, Len(Cells(1, Val(x)).Address(0, 0)) - 1)
        MsgBox "数字" & x & "转化为列标为:" & y
    Else
        MsgBox "输入的数据类型有误或超出范围。"
    End If
End Sub

.

代码语言:javascript
复制

'代码四:
Public Sub NumberToUpperCase4()
    Dim x As Variant, y As String
    x = InputBox("请输入数字")
    If IsNumeric(x) And x < Columns.Count Then
        y = Split(Cells(1, Val(x)).Address, "$")(1)
        MsgBox "数字" & x & "转化为列标为:" & y
    Else
        MsgBox "输入的数据类型有误或超出范围。"
    End If
End Sub

.

代码语言:javascript
复制

'代码五:此代码实质是进制转换,即把10进制转换为26进制。只用VB函数,只受Long型数据限制。
Public Sub NumberToUpperCase5()
    Dim x As Variant, y As String
    x = InputBox("请输入数字")
    y = NbToUc(x)
    MsgBox y
End Sub

Public Function NbToUc(lonVal As Variant)
    Dim lonX As Long
    If IsNumeric(lonVal) And lonVal <= 2147483647 Then
        NbToUc = ""
        Do
            lonX = lonVal Mod 26
            NbToUc = Chr(lonX + 64) & NbToUc
            lonVal = lonVal \ 26
        Loop Until lonVal = 0
    Else
        NbToUc = "输入的数据类型有误或超出范围。"
    End If
End Function

====今天学习到此====

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-09-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 哆哆Excel 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档