2015-01-28 3 views
0

아래 코드는 내 데이터 (CurrentMonth)의 셀을 변경하는 vlookup을 가지고 있지만 원본 서식을 유지할 수는 없습니다. col 2의 반환 값은 01, 02, 03 등 일반 텍스트 형식의 12까지입니다. 그러나 아래 수식은 1, 2, 3 등을 반환합니다.vba vlookup 서식 유지

나는 테이블의 숫자 앞에 ' 나는 조사하고 있지만 작동하지 않습니다. 또한 코드로 형식을 복사 한 다음 변경된 값에 특수 형식을 붙여 넣으려고 시도했지만 작동하지 않습니다. 조회 테이블의 형식 유형과 내가 변경할 데이터는 동일합니다. 포맷팅을 유지하기 위해 필요한 코드는 무엇입니까? 그래서 처음에는 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 

답변

0

, 당신은 유형 "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 
+0

많은 감사합니다! 너는 지난 며칠 동안 정말로 나를 도왔다! – George

+0

문제 없습니다. 도움이 되니 기쁩니다! – TheEngineer