基于相邻小区(VBA)上给出的信息的小区的数字格式

时间:2013-06-05 21:34:52

标签: excel-vba cell-formatting vba excel

尝试根据使用VBA在相邻单元格上选择的货币设置单元格的数字格式。见下面的示例。

enter image description here

到目前为止,我使用的是以下代码,但我似乎无法使格式正确显示

Option Explicit
Public preValue As Variant
Private Sub Worksheet_Change(ByVal Target As Range)

Dim cell As Range
Dim Rng As Range
Dim ccy As String

ccy = Range("A3").Value
pctFormat = "0.000%"
fxFormat = ccy + " " + pctFormat


If Target.Cells.Count > 1 Then Exit Sub
On Error Resume Next
If Not Intersect(Target, Range("A2:A10")) Is Nothing Then
    If Target.Value <> preValue And Target.Value <> "" Then
        Application.EnableEvents = False

  Cells(Target.Row, Target.Column + 1).NumberFormat = fxFormat

        Application.EnableEvents = True

    End If
End If

On Error GoTo 0
End Sub

2 个答案:

答案 0 :(得分:1)

也许:

fxFormat = chr(34) & ccy & chr(34) & " " & pctFormat

答案 1 :(得分:1)

您可以尝试使用此选项设置fxFormat variable

fxFormat = "[$" & ccy & "] 0.000%"