vba vlookup继续格式化

时间:2015-01-28 10:54:06

标签: excel-vba formatting vlookup vba excel

我的代码下面有一个vlookup,用于更改数据中的单元格(CurrentMonth),但是我无法保持源代码的格式化。 col 2中的返回值为01,02,03等,一般文本格式为12,但下面的公式返回1,2,3等。

我已经尝试在我正在调查的表格中输入一个',但这不起作用。还尝试使用代码复制格式,然后在更改的值上粘贴特殊格式,但这不起作用。查找表的格式类型和我正在更改的数据是相同的。我需要什么代码来保持格式化,所以我不会在开头丢失0,将查找值保持为文本?

'vlookup based on combobox selection held in variable
    Cat3No = Application.WorksheetFunction.VLookup(Me.ComboBoxCat3Name.Value, (Worksheets("ValidCombos").Range("C:D")), 2, False)

'variable used to change cell in dataset
    Worksheets("CurrentMonth").Cells(Currentrow, 32).Value = Cat3No

1 个答案:

答案 0 :(得分:0)

如果您不需要将值设置为文本,则可以将单元格格式化为Type" 00"的自定义格式:

Format Cells

修改

更简单的答案是将代码更改为:

'vlookup based on combobox selection held in variable
    Cat3No = Application.WorksheetFunction.VLookup(Me.ComboBoxCat3Name.Value, (Worksheets("ValidCombos").Range("C:D")), 2, False)

'variable used to change cell in dataset
    With Worksheets("CurrentMonth").Cells(Currentrow, 32)
        .Value = Cat3No
        .NumberFormat = "00"
    End With