2013-03-06 5 views
2

양식 선택에 따라 관련 항목 시트를 숨김 해제 할 항목 목록이있는 양식이 있습니다. 항목 이름 길이로 인해 각 항목에 ID가 할당됩니다. vlookup 함수는 다른 시트의 이름 일치에 따라 관련 ID를 검색합니다.v Excel에서 VBA에 대한 찾아보기 오류

코드는 다음과 같습니다.

전달되는 fundName 값은 "AX - Arnold Xchange Securities (USD)"입니다. fundID는 검색되는 배열의 5 번째 열에 있습니다. fundID가 분명히 존재합니다.

여기서 문제는 함수 클래스의 vLookup 속성을 얻을 수없는 런타임 오류가 발생한다는 것입니다. 오류 1004

Private Sub FundLookupImage_Click() 

Dim fundName As String 
Dim fundSheetName As String 
Dim ws As Worksheet 

Set ws = Worksheets("DownloadTable") 
MsgBox ws.UsedRange.EntireRow.Count 

fundName = Me.FundList.Value 
fundName = """" & fundName & """" 
MsgBox fundName 

fundSheetName = CStr(Application.WorksheetFunction.VLookup(fundName, ws.Range("A:F"), 5, True)) 
MsgBox fundSheetName 

Unload Me 
End Sub 

내가 엑셀 ​​자체에 VLOOKUP 방법을 테스트했고 그것이 내가 그것을 사용하는 때 VLOOKUP을 사용

+0

당신의 vlookup이 올바른 것처럼 보입니다 (목록이 정렬되어 있다고 확신하는 경우 - 'True'를 제거하지 않으면). 'fundName'을 따옴표로 묶어야합니까? 'fundName = "" ""& fundName & "" ""'을 제거해보십시오 ... –

답변

1

항상 나를 미치게 만드는 올바른 ID를 검색, 이것을 시도하십시오

DIM searchResult AS variant 
    searchResult = 0 
    On Error Resume Next 
    searchResult = Application.WorksheetFunction.VLookup(fundName, ws.Range("A:F"), 5, 0) 
    fundSheetName = CStr(searchResult) 
+0

안녕하세요! 오류 재개와 함께 작동합니다. 지금은 1 번에 격리시켜야합니다. 감사!!! –