2

列が数字でいっぱいで、2 番目の列に各数字のそれぞれの通貨があるファイルがあります。私は持っていUSD, EUR, CHF, and GBPます。

数値列を数値から通貨に書式設定し、2 番目の列から通貨を適用するマクロを作成したいと考えています。

これの秘訣は、数値を足したり引いたりできるように、数値列にまだ数値を入れておきたいということです。したがって、フィールドがテキストになり、数式で使用できなくなるため、2 つの列を単純に結合したくありません。

どなたかご存知でしたら教えてください。

ありがとうございました!

4

1 に答える 1

5

あなたの正確な問題を理解しているかどうかはわかりませんが、これは列 A のすべての値を取得し、列 B の通貨の値に基づいて列 C の通貨としてフォーマットします。

Sub Macro1()

Dim cl As Range

For Each cl In Intersect(ActiveSheet.Range("A:A"), ActiveSheet.UsedRange)
   cl.Offset(0, 2).Value = cl.Value
   Select Case cl.Offset(0, 1).Value
      Case "USD"
         cl.Offset(0, 2).NumberFormat = "$#,##0.00"
      Case "EUR"
         cl.Offset(0, 2).NumberFormat = "[$€-2] #,##0.00"
      Case "GBP"
         cl.Offset(0, 2).NumberFormat = "[$£-809]#,##0.00"
      Case "CHF"
         cl.Offset(0, 2).NumberFormat = "[$CHF] #,##0.00"
   End Select

Next cl

End Sub

通貨の種類を変更する場合は、セルを正しい通貨に設定するマクロを記録し、必要に応じてその数値形式をコピーして貼り付けます。

于 2012-11-14T16:12:08.970 に答える