2017-12-21 1 views
0

처음 게시하고 VBA에 처음으로 새로운 값을 반환합니다.VBA를 사용하여 Vlookup을 포함하는 범위를 값으로 붙여 넣은 다음 첫 번째 값을 반복합니다.

열 A에는 송장 번호 목록이 있고 열 B는 어떤 판매 채널이 송장 (회사, 소매점 등)을 생성했는지를 알려주는 vlookup입니다. 그 값을 복사하여 다른 워크 시트에 붙여 넣을 VBA 매크로를 작성하려고합니다. 내가 할 때, 첫 번째 조회의 값을 모든 행에 붙여 넣습니다 (행 A는 문제없이 작동 함). 왜 어떤 아이디어입니까?

'Finds Last Row of Raw Data 
With WB1 
Worksheets("Raw Data").Select 
    lRow = Cells.Find(What:="*", _ 
       After:=Range("A1"), _ 
       LookAt:=xlPart, _ 
       LookIn:=xlFormulas, _ 
       SearchOrder:=xlByRows, _ 
       SearchDirection:=xlPrevious, _ 
       MatchCase:=False).Row 
End With 

'Copy and Paste Department info 
Worksheets("Raw Data").Range("GF1:GF" & lRow).Copy 
Worksheets("DataForReport").Range("B1").PasteSpecial xlPasteValues 

이것은 내가 작업하고있는 더 큰 매크로의 작은 부분입니다. 더 많은 코드가 필요하시면 알려 주시기 바랍니다. 더 많은 부분을 게시 할 수 있습니다. 시간을내어 도와 주셔서 감사합니다!

+0

"열 B는 vlookup입니다."- 열 B에서 복사하지 않습니다. - 열 GF에서 복사 중입니다. 또한, 왜 With With WB1 블록을 가지고 있고, 블록 내 어디에서나 With 문을 사용하지 않는 이유는 무엇입니까? – YowE3K

답변

0

원본을 두 개의 열로 구분하지 않습니까? Worksheets("Raw Data").Range("GF1:GF" & lRow).Copy

을하고 붙여 넣기 :

에만 열 "GF"를 복사 Worksheets("DataForReport").Range("B1").PasteSpecial xlPasteValues

하면 원본 데이터 범위는 무엇입니까? GF1 : GG & lRow?

"With With WB1 ... End with"는 해당 코드에서 쓸모없는 것 같습니다.

시도 :

'Finds Last Row of Raw Data 
    lRow = Worksheets("Raw Data").usedrange.specialcells(xlcelltypelastcell).row 
'Copy and Paste Department info 
    Worksheets("Raw Data").Range("GF1:GG" & lRow).Copy 
    Worksheets("DataForReport").Range("B1").PasteSpecial xlPasteValues 

그리고 당신의 요구에 범위를 적용.

관련 문제