excel vba:列列表的数字格式

Posted

技术标签:

【中文标题】excel vba:列列表的数字格式【英文标题】:excel vba: Numberformat for a list of Columns 【发布时间】:2019-10-25 13:26:40 【问题描述】:

在列列表上使用 numberFormat 是否有更短的方法? 例如我有

.Columns("C").NumberFormat = "#,##0.00_)"
.Columns("F").NumberFormat = "#,##0.00_)"
.Columns("G").NumberFormat = "#,##0.00_)"

类似的东西(不起作用)

 Range(.Columns(3), .Columns(6), .Columns(9)).NumberFormat = "#,##0.00_)"

感谢您的帮助, 呵呵

【问题讨论】:

Range 更改为Union 【参考方案1】:

类似的东西,可以为你工作。

Dim r As Excel.Range

Set r = Union(ActiveSheet.Columns(1), ActiveSheet.Columns(3), ActiveSheet.Columns(5))
r.Select

【讨论】:

【参考方案2】:

我像这样使用 Nathan_Sav 的(thankU)解决方案:

   Dim r As Excel.Range
   Set r = Union(.Columns(3), .Columns(6), .Columns(9))
   r.NumberFormat = "#,##0.00_)"

【讨论】:

【参考方案3】:

另一种选择

Dim col
For Each col In Array("A", "B", "C")
    .Columns(col).NumberFormat = "#,##0.00_)"
Next col

但联合更快

【讨论】:

以上是关于excel vba:列列表的数字格式的主要内容,如果未能解决你的问题,请参考以下文章

excel vba 数字转文本

从ADODB记录集复制数据时,Excel表丢失数字格式

vba 数字变为excel对应列的字母

Excel vba 问题, Target.Address 怎么返回 RC格式,或者只返回列?

EXCEL VBA统计的代码?

在 Excel VBA 中更改为加拿大 (CDN) 法语数字格式