요즘 VBA 공부하고 있는데 이것 저것 에러 해결 방법을 적어 둔다.
문제: VBA에서 ActiveCell.FormulaR1C1 을 활용해서 VLOOKUP을 사용하고 있는데
VLOOKUP에서 Lookupvalue 문자열에 ~을 인식 하지 못함
기존 식
ActiveCell.FormulaR1C1 = "=VLOOKUP([@상품명],Sales[[상품]:[타입]],3,FALSE)"
|
상품명에 ~ 문자열인식못해서 Substitute 함수를 이용해 변경 하려고함
변경 중 (에러남)
ActiveCell.FormulaR1C1 = "=VLOOKUP(SUBSTITUTE([@상품명],"~",""),Sales[[상품]:[타입]],3,FALSE)"
|
이것도 안됨 왜냐하면 " 문자열 때문에 VBA에서 받아주지 않음
변경 (정상작동)
ActiveCell.FormulaR1C1 = "=VLOOKUP(SUBSTITUTE([@상품명]," & Chr(34) & "~" & Chr(34) & "," & Chr(34) & "~~" & Chr(34) & "),Sales[[상품]:[타입]],3,FALSE)"
|
" 문자는 Chr(34)로 변경
"~"는 "~~" 로 변경해야 적용 가능하다.
참고 링크
정상 작동 확인
댓글 없음:
댓글 쓰기