对于初学者来说,有很多与此主题相关的问题。但是,我一直单击的所有语言都是VBA以外的语言,并且我不理解这些语言的语法。
当我进行Google搜索时,我发现this answer看起来很有希望。啊,棒子!我刚刚意识到VB的答案,并可能解释了为什么它在我的VBA中不起作用
情况
我有一个名为DimScale的变量,它是一个整数。我想创建一个名为DimName的字符串,该字符串将以“ mm-”开头,并以DimScale的整数开头,并以前导0开头,以使“ mm-”之后的字符最少。
IF DimScale = 25
Then DimName = "mm-0025"
IF DimScale = 235
Then DimName = "mm-0235"
Note Dimscale >=1 and <= 9999
我尝试过的
Dim Dimscale as Integer
Dim Dimension_Style_Name as String
String.Format("{0:0000}", DimScale)
Dimension_Style_Name = DimScale$
Dimension_Style_Name.Format("{0:0000}", DimScale)
我也读过要点,即Dimscale转换为字符串,然后通过添加前导零的循环发送,直到字符串的长度等于整数部分的4个字符为止。
我也看到了IF语句的情况,其中IF Dimscale <10则为“ 000”&如果Dimscale <100则为“ 00”&等。
是否可以像VBA中的VB方法一样做到这一点?
答案 0 :(得分:11)
也许是:
{{1}}
根据@MathieuGuindon的宝贵贡献(照常):
Format(完全合格的VBA.Strings.Format)采用Variant参数,并返回Variant-您也可以使用其小兄弟Format $,后者采用String并返回String,从而消除了隐式转换方式