簡體   English   中英

通過在每一行中使用循環來創建具有條件的數字格式

[英]Create a number format with criteria by using a loop every row

如果 USD = 4 位數字,IDR = 0 位數字,JPY = 2 位數字,我想使用 excel 中的宏制作一個帶標准的數字格式,因為有很多行

樣本

謝謝您的幫助

我用過這個模塊,但它不起作用

Sub LoopRange()
    Dim rng As Range
    Set rng = Range("A1:A100")
    For Each cell In rng
        If Range("a1").Value = "IDR" Then
        Range("b:b").NumberFormat = "#,##0"
    ElseIf Range("a1").Value = "JPY" Then
        Range("b:b").NumberFormat = "#,##0.00"
    Else: Range("b:b").NumberFormat = "#,##0.0000"
    End If
    Next cell
End Sub

For Each cell In rng已經通過特定單元格循環,不需要稍后指定Range("a1") 此外,你只通過 A1 循環,我認為你是指cell

此外, Range("b:b").NumberFormat將更改整個列的格式。 我想你想要cell.Offset(0,1).NumberFormatRange("B" & cell.row)

可能你想要這樣的東西:

Sub LoopRange()
Dim rng As Range
Dim cell As Range
Set rng = Range("A1:A100")

For Each cell In rng
    If cell.Value = "IDR" Then
        cell.Offset(0, 1).NumberFormat = "#,##0"
    ElseIf cell.Value = "JPY" Then
        cell.Offset(0, 1).NumberFormat = "#,##0.00"
    Else
        cell.Offset(0, 1).NumberFormat = "#,##0.0000"
    End If
Next cell

Set rng = Nothing

End Sub

您也可以使用條件格式:

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM