【问题标题】:Excel VBA Won't Keep Leading ZeroesExcel VBA 不会保留前导零
【发布时间】:2014-09-01 10:19:01
【问题描述】:

我似乎找不到在我的 VBA 代码中保存前导零的方法。零是必要的,因为它们对应于唯一的 ID。

我尝试在 excel 中将数字格式更改为文本和 0000.... 并在我的实际代码中使用相同的方法: ActiveSheet.Cells(i, j).NumberFormat = "00000"

还有其他建议吗? (如果我手动将这些数字输入到 VBE 中,它也会去掉前导零)。 编辑:

Sheets.Add.Name = "Temp"
Sheets("Sheet1").Select
ActiveSheet.Cells(2, 2).NumberFormat = "000"
cid = Cells(2, 2)
MsgBox cid
Sheets("Sheet2").Select
ActiveSheet.Cells(6, 1).NumberFormat = "00000"
sid = Cells(6, 1)
Sheets("Temp").Select
Url = _
"URL;" & _
"http......asp?" & _
"X1=" & cid & "&" & _
"X2=" & sid & "&"

这最终在一个循环中,但我正在作为单独的迭代进行调试。

【问题讨论】:

    标签: vba excel


    【解决方案1】:

    以下所有讨论都是关于写入到一个单元格,而不是从中读取。更改 Numberformat 不能那样工作。 看看你能不能弄清楚这段代码是如何工作的:

    dim v as integer
    v = val(Sheets("Sheet1").Cells(2, 2))
    dim cid as string
    cid = format(v, "000")
    

    你不应该那样使用Select和ActiveSheet,没有必要;并且永远不要在没有它应该引用的工作表的情况下使用Cells。
    (如果单元格确实已经是数字而不是文本,则可以省略Val)。


    较早的答案...:

    这段代码对我来说很好用

    Worksheets(1).Columns("A").NumberFormat = "@"
    Worksheets(1).Cells(1, "A").Value = "00023"
    

    还有

    Worksheets(1).Columns("A").NumberFormat = "000000"
    Worksheets(1).Cells(1, "A").Value = "0023"
    

    (这里将字符串转换为数字,显示为6位)

    编辑:
    如果失败 - 尽管我无法解释 - 我仍然打赌 ' 应该真的工作:
    (不需要数字格式。)

    Dim s As String
    s = "0002"
    Worksheets(1).Cells(1, "A").Value = "'" & s
    

    【讨论】:

    • 所以,正如我所提到的,我已经尝试过了。我一直在尝试调试,MsgBox 在这一步之后立即报告一个剥离的数字
    • 您应该编辑您的问题并添加一些您正在使用的实际代码。
    【解决方案2】:

    将格式设置为文本或“00000”应该可以。下面的小 sn-p 给出了预期的结果。第一个存储值 0001,第二个存储值 1,其格式看起来像 0001。

    如果单元格值存储在字符串变量中,这也适用。

    Sub set_value()
    
    Range("A1").NumberFormat = "@"
    Range("A1").Value2 = "0001"
    
    Range("B1").NumberFormat = "0000"
    Range("B1").Value2 = "1"
    
    End Sub
    

    【讨论】:

    • 所以,正如我所提到的,我已经尝试过了。我一直在尝试调试,并且在此步骤之后 MsgBox 立即报告了一个已删除的数字。
    猜你喜欢
    • 2013-09-22
    • 2014-02-14
    • 2021-08-25
    • 1970-01-01
    • 2011-10-01
    • 1970-01-01
    • 2020-06-11
    • 2018-09-13
    • 1970-01-01
    相关资源
    最近更新 更多