본문 바로가기

INSTR4

[기초방] VBA 100제 #37 [ Characters ] 37번 문제인데 38번으로 표기해서 크루인 [시훈아빠]님한테 혼이났다.. 37번으로 알고 가시길... 이문제는 Characters의 매소드중 Insert를 알고 모르고의 차이가 크다.. 이걸 Replace로 하게 되면 코드가 많이 지저분해질것이다. Characters 매소드에 대해선 Characters의 고찰편에서 자세하게 다뤄보도록 하겠다. With Reg .Pattern = "[^\s]+" .Global = True End With 해당 정규식 패턴은 [ 띄어쓰기가 아닌 모든 문자 ] 라는 의미이다. With rngA.Characters(idx, Len(Ma)) If .Font.Color = vbRed Then .Insert ("[" & Ma & "]") End If End With 이 구문은 핵심구.. 2023. 3. 6.
[기초방] VBA 100제 #18 [ 이름별 카테고리 나열하기 ] 왼쪽에 있는 표를 이름별로 나열하는 구문이다. 이문제는 이름과 이름과 하위분류로 이루어져있다. 이름이 나오면 한행을 이동후 E열에 이름부터 다시 출력을 하여야 한다. If InStr(rngA, " ") = 0 Then Set rngX = Cells(rngX.Row + 1, "e") rngX = Split(rngA, " ")(0) 문자 조합이 이름은 이름만 있고 이름과 하위분류로 구성된것은 이름 + [공백 ] + 하위분류로 되어 있기 때문에 Instr로 공백 유무를 따지면 이게 이름으로 구성되어 있는지 이름과 하위분류의 조합인지를 알 수 있다. 따라서 위의 구문은 이름으로만 구성이 되었다면 한행을 내려와서 E열에 이름을 출력하라는 구문임을 알 수 있다. 내말 몬말인지 알지?? 출력은 [e5] 부터 출력인데.. 2023. 1. 17.
[VBA] Alt + Enter 셀 텍스트 색상 변경하기 이전에 이런 글을 올릴적이 있다 https://1stminokingdom.tistory.com/56 [VBA] 글자색 바꾸기(feat. Instr/Characters) 오늘 해볼건 이런것이다. 색상 을 변경할 단어를 Inputbox로 입력받은 후 입력받은 단어를 색상은 빨강색 / Bold는 True하는 작업이다. 이 역시 막상 해보려면 좀 난감하기에 코드를 한번 쏴악 훝어보 1stminokingdom.tistory.com 이건 해당 영역을 순환하면서 값을 찾은 후 글자수를 계산하여 해당 글자만큼 색상을 입혀주기만 하면 된다. 아무 생각할 필요도 없다고 건방을 떨었다...와...근데 하루 반나절이 걸렸다. 물론 일하는 짬짬이 해결했지만 시간 상으론 하루 반나절이 맞다... 이전 글에 올렸던 글자색 변경 문.. 2022. 4. 20.
[VBA] 글자색 바꾸기(feat. Instr/Characters) 오늘 해볼건 이런것이다. 색상 을 변경할 단어를 Inputbox로 입력받은 후 입력받은 단어를 색상은 빨강색 / Bold는 True하는 작업이다. 이 역시 막상 해보려면 좀 난감하기에 코드를 한번 쏴악 훝어보면서 어떻게 하면 되는지 보길 바란다. 여기에 사용된 코드는 1. 정규식 2. Instr 3. Characters 텍스트를 다루는 데에서는 많이 쓰는 코드이니 실제적으로 어떻게 사용하는지 알아두면 유용할 듯하다 2021. 11. 24.