나눔터  
  HOME > 나눔터 > 묻고답하기 > 엑셀
엑셀
엑셀에 대한 질문과 답변을 올려주세요. 단, 취지에 맞지 않는 글은 운영자가 삭제합니다.
 "000 님, 도와주세요", "부탁 드립니다.", "급합니다!" 등과 같이 막연한 제목을 달지 말아주세요.
[필독] 빠르고 정확한 답변을 얻는 16가지 Tip !
[필독] 저작권법 개정에 따른 이용안내

작성자:  

 gslim (gslim)

추천:  2
파일:     조회:  2939
제목:   셀 중 일부를 선택하여 서식을 바꾸려면?
     
  * 답변하시는 분들께 도움이 되도록 자신의 환경을 아래 항목 옆에 기재해 주세요.

 - 엑셀 버전(95,97,2000,xp,2003,2007):

* 아래줄에 질문을 작성하세요 >>

안녕하세요?
평소에 도움을 많이 받습니다. 먼저 감사 말씀 드립니다.

엑셀을 사용하다 보면 한개의 셀에 들어 있는 내용(주로 텍스트)중 선택(마우스나 키보드로)한 부분에 대한 서식을 바꾸는 작업을 하게 되는데 이를 구현하는 vba코드를 알고 싶습니다. 

vba가 아니더라도 엑셀 사용 중에 서식을 바꾸고자 하는 부분을 선택한 후 마우스 오른 쪽 버튼을 눌러서 서식을 변경하면 되지만 서식을 변경하려는 셀이 많아서 클릭을 여러번 해야 하는 것이 번거로워 이를 매크로로 만들어 선택 하나 당 한번 클릭으로 처리하려는 것입니다.

characters개체가 있기는 하지만, 마우스로 임의 선택한 문자열의 시작문자위치와 문자길이를 표현하는 방법을 몰라서 여쭤 봅니다. characters개체로 가능한지 조차도 모르겠습니다.

부탁드립니다.
 
[불량 게시물 신고]  
조삿갓아래 122999번 답변 내용을 잘 분석해 보시면 아마 답이 있을 것 같습니다.

다만, 마지막 질문 내용은 모순이 있네요.
어차피 VBA의 자동화 코드로 여러 셀 내용 중 일부를 자동으로 바꾸자면, 마우스로 원하는 범위를 지정하는 것은 불가능 한 것 아닌가요?

셀 내용 중에 특정한 내용과 일치하는 부분이라든가
몇 번째 글자부터 몇 번째 글자까지라든가
그런 조건으로 해야만 하지 않나요?

그러면 어차피 characters개체가 유일한 답입니다.

다만, 시작 위치와 길이를 계산하는 방법을 연구해야 하겠지요
07-04 (22:03)
삭제 ■신고
gslim답변 감사드립니다. 

그런데 vba가 자동화 도구이기는 하지만, 매크로의 구현 방법이기도 합니다. 

저는 엑셀 작업중에 몇단계의 메뉴선택을 거쳐야 하는 작업들을 매크로로 만들어서 사용하는데, 임의의 셀이나 범위를 선택해서 매크로를 구동시키기 위해서는 매크로기록기 만으로는 안되고 편집기를 통해 vba의 selection개체를 활용해야만 합니다. 

제가 characters개체를 언급하기는 했지만, cell 내에서 selection개체를 사용하는 방법을 찾지 못해서 그렇게 여쭤 본 것입니다.
07-05 (10:36)
삭제 ■신고
        
  

작성일 : 2017-07-04(19:57)
최종수정일 : 2017-07-04(19:57)