2014-07-22 4 views
1

다음 작업을 수행하려고합니다. 드롭 다운 시트의 셀 B63에 나타나는 값은 Review 시트의 C 열에 나타날 수 있습니다. 검토 시트에서 A 열 (RngStart)에서 "Before After"라는 단어로 시작하는 섹션을 찾고 C 열에서 B63 값을 찾은 다음 F 열 (Offset (열) 1,3)). 모든 정보는 셀 A7 (RngDest)에서 시작하는 Mkting이라는 시트에 붙여 넣습니다. 지금 이것은 내 작업 코드이지만 작동하지 않습니다. 도움!특정 값을 찾은 후 오프셋을 복사하십시오.

Sub test() 

Dim RngStart As Range, RngDest As Range 
Dim Sector1 As String 

Sector1 = Sheets("Dropdowns").Range("B63").Value 

With Sheets("Mkting") 
    Set RngDest = .Range("A7") 
End With 

Set ws = Sheets("Review") 
Set RngStart = ws.Columns("A").Find("Before After", , xlValues, xlPart) 

With Sheets("Review").Range("C" & RngStart.row & ":" & "C1000") 
    .AutoFilter 1, Sector1 
    .Offset(1, 3).Copy RngDest 
    .AutoFilter 
End With 

최종 하위는

답변

1

이 당신을 위해 작동합니다. 혼란 스러웠던 부분은 단락에서 오프셋 (1,3)이었습니다. 이 코드는 일치하는 열 F 행의 값을 가져옵니다. 일치에서 다음 줄을 찾으려면 RngDest.Value = Sheets ("Review")를 변경하십시오. 범위 ("F"& ctr) .Value to RngDest.Value = Sheets ("Review" "F"& ctr + 1). 값.

목표로 Like Operator을 사용하는 것이 좋습니다. 당신이 옵션을 사용하지 않는 경우 옵션 명시 적 옵션 아래 오른쪽 또는 1 라인과 같은 두 모듈의 상단에 텍스트 비교 놓고 노골적인 (당신은 항상해야한다.)

나머지는 간단 검토 워크 시트에서 지정한 두 가지 기준을 찾아보십시오. 찾은 일치 항목을 A7 셀에서 시작하여 Mkting 워크 시트에 배치합니다.

Option Compare Text 

Sub test() 
    Dim RngDest As Range 
    Dim Sector1 As String 
    Dim MaxRow As Long 
    Dim ctr As Long 

Sector1 = Sheets("Dropdowns").Range("B63").Value 
Set RngDest = Sheets("Mkting").Range("A7") 
MaxRow = Sheets("Review").Range("A" & Rows.Count).End(xlUp).Row 

For ctr = 1 To MaxRow 
    If Sheets("Review").Range("A" & ctr).Value Like "Before After*" And Sheets("Review").Range("C" & ctr).Value Like Sector1 Then 
     RngDest.Value = Sheets("Review").Range("F" & ctr).Value 
     Set RngDest = RngDest.Offset(1, 0) 
    End If 
Next ctr 

End Sub 
+0

여기 와일드 카드 사용에 감사드립니다. – Noldor130884

+0

감사합니다. 그것은 작동합니다! – spaindc

관련 문제