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

작성자:  

 표일환 (cicadidae)

추천:  2
파일:     조회:  1486
제목:   vba 특정 단어부터 단어값 삭제하는 방법
     
  안녕하세요. 엑셀 2016을 사용중입니다.
예: <ul ~ </ul>
vba로 특정값<ul부터 특정값 </ul>까지의 특정값<ul </ul>까지 포함한 모든값을 삭제할 수 있을까요?

 
[불량 게시물 신고]  
조삿갓워크시트 함수로 해결하기: 문자열이 A1 셀에 저장되었다고 할 때,
 =IFERROR(LEFT(A1,FIND("<ul>",LOWER(A1))-1)&IFERROR(MID(A1,FIND("</ul>",LOWER(A1))+5,500),""),A1)

 VBA 사용자정의 함수로 설계
Function Del_in_UL(ByRef wstr As String)
  Dim lp As Integer
  Dim rp As Integer
  Dim lstr As String
  lstr = LCase(wstr)
  lp = InStr(lstr, "<ul>")
  rp = InStr(lstr, "</ul>")
  If lp > 0 Then wstr = Left(wstr, lp - 1) & IIf(rp > 0, Mid(wstr, rp + 5), "")
  _in_UL = wstr
 End Function
05-29 (20:08)
삭제 ■신고
조삿갓모듈을 삽입하여 위 코드를 입력하고

=Del_In_UL("test <ul> delete </ul> remain")

또는 VB 코드 상에서
str = "test <ul> delete </ul> remain"
 Del_in_UL str

과 같이 프로시저 형태로 호출해도 됩니다.
05-29 (20:08)
삭제 ■신고
        
  

작성일 : 2018-05-29(18:05)
최종수정일 : 2018-05-29(18:05)