HTML 요소를 추출하는 방법은 무엇입니까?

HTML 요소를 추출하는 방법은 무엇입니까?

정렬 및 필터링이 필요한 수백 개의 div가 있습니다.

모든 HTML을 제거하고 다음 항목만 남기고 싶습니다.

  • 이름= 키스
  • 이메일= [이메일][이메일 보호됨][/이메일]
  • 가게= Store 1(여기에는 2가지 옵션만 있습니다. Store 1, Store 2)

아래 코드는 모두 개별 단일 셀에 들어 있으므로 약 400개의 셀이 있습니다.

<div userid=""286"">
    <div id=""694"">
        <h1 style=""display:none"">Keith</h1>
        <div>
            <label class=""ufo-cform-label"">Name</label>
        </div>
        <div>Keith</div>
    </div>
    <div id=""697"">
        <h1 style=""display:none"">[email protected]</h1>
        <div>
           <label class=""ufo-cform-label""> Email Address</label>
        </div>
        <div>[email protected]</div>
    </div>
    <div id=""698"">
        <h1 style=""display:none"">Store 1</h1>
        <div>
            <label class=""ufo-cform-label"">Please choose your closest store</label>
        </div>
        <div>Store 1</div>
    </div>
</div>

엑셀에서도 이게 가능한가요? 어떤 안내에도 감사드립니다.

답변1

귀하의 질문에는 안타깝게도 세부 정보가 부족하여 답변이 까다롭습니다.

셀의 형식이 동일합니까? 변경되는 것은 HTML입니까, 아니면 값만입니까? 이름, 이메일, 매장을 항상 찾고 계십니까? 줄 바꿈이 같은 위치에 있습니까? 워크시트 수식이나 VBa를 사용하려는 경우에도 언급하지 않습니다.

귀하가 제시한 예를 바탕으로 이 VBa는 기본 작업을 수행하거나 최소한 시작할 수 있을 만큼 충분한 기능을 제공해야 합니다.

Sub DoTheThingTheyWant()

Dim myValue As String
myValue = Range("A1").Value

Dim myValueSplit() As String
myValueSplit = Split(myValue, ">")

Dim nameSplit() As String


Range("B1").Value = "Name: " & GetValue(myValueSplit, 9)
Range("B2").Value = "Email: " & GetValue(myValueSplit, 13)
Range("B3").Value = "Store: " & GetValue(myValueSplit, 29)

End Sub


Function GetValue(myValueSplit() As String, pos As Integer)

Dim result() As String

result = Split(myValueSplit(pos), "<")

GetValue = result(0)


End Function

매크로는 실행 취소할 수 없으므로 항상 작업 복사본을 먼저 백업으로 저장하십시오!!

답변2

파티에 조금 늦었지만 나 자신에 대한 답변이 필요했고 VBA 없이 수동으로 답변해야 했습니다. VBA를 사용하지 않는 사용자도 쉽게 중첩된 대체 항목을 사용했습니다.

=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE([@Description],"<html-blob>",""),"gt;",""),"</i>",""),"<i>",""),"</html-blob>",""),"</a>",""),"amp;",""),"<br />",""),"</span>",""),"&nbsp",""),"<a href=",""),"</b>",""),"<span>",""),"<br>",""),"<b>",""),"</u>",""),"<u>","")

이를 사용하려면 "[@Description]"을 소스 데이터로 바꾸세요.

더 추가하려면 다음과 같이 중간 대체 함수를 복사하세요.

SUBSTITUTE([@Description],"<html-blob>","")

이것을 표에서 사용했기 때문에 수식의 소스인 "[@Description]"에 붙여넣습니다. 중복 대체를 변경하십시오.

관련 정보