У меня есть несколько сотен этих div, которые мне нужно отсортировать и отфильтровать.

Я хотел бы удалить ВСЕ HTML и оставить только следующее:

пример

  • Имя = Кит
  • Email = [email] keith@example.com [/email]
  • Магазин = Магазин 1 (У этого есть только 2 варианта. Магазин 1, Магазин 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"">keith@example.com</h1>
        <div>
           <label class=""ufo-cform-label""> Email Address</label>
        </div>
        <div>keith@example.com</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>

Это вообще возможно в Excel? Спасибо за любое руководство.

1 ответ1

0

Ваш вопрос, к сожалению, лишен многих деталей, поэтому сделать ответ сложно.

Ячейки в том же формате? Это 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

Помните, всегда сначала сохраняйте копию своей работы в качестве резервной копии, поскольку макрос не отменяет !!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .