繁体   English   中英

Excel-VBA中的“百分比”样式格式

[英]“Percent” Style Formatting in Excel-VBA

已经选择了n个工作表,并且我尝试将“百分比”样式应用于所有单元格选择范围。但是,只有第一个工作表才被格式化。我使用的其他格式化样式在所有工作表上都可以正常使用。只有“百分比”似乎只在第一张纸上起作用!这是否有特定原因?请在下面粘贴我的代码段:预先感谢您的帮助

Range(Cells(143, 2), Cells(146, MarketRangeColumn + 10)).Select
Selection.Style = "Percent"
Range(Cells(100, 2), Cells(142, MarketRangeColumn + 10)).Select
Selection.Style = "Comma"
Selection.numberformat = "_(* #,##0.0_);_(* (#,##0.0);_(* ""-""??_);_(@_)"
Selection.numberformat = "_(* #,##0_);_(* (#,##0);_(* ""-""??_);_(@_)"

如果选择了多个图纸,则应用样式只会影响活动图纸上的单元格。 应用NumberFormat会影响所有工作表,因此您应该使用NumberFormat而不是Style,否则要遍历每张工作表。

所有工作表选择方法

Sub test()
    Dim vName()
    Dim Ws As Worksheet, n As Integer
    For Each Ws In Worksheets
        n = n + 1
        ReDim Preserve vName(1 To n)
        vName(n) = Ws.Name
    Next Ws
    Sheets(vName).Select
    Range(Cells(143, 2), Cells(146, MarketRangeColumn + 10)).Select
    Selection.Style = "Percent"
    Range(Cells(100, 2), Cells(142, MarketRangeColumn + 10)).Select
    Selection.Style = "Comma"
    Selection.NumberFormat = "_(* #,##0.0_);_(* (#,##0.0);_(* ""-""??_);_(@_)"
    Selection.NumberFormat = "_(* #,##0_);_(* (#,##0);_(* ""-""??_);_(@_)"
End Sub

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM