
Я пытаюсь вернуть строку, выполняя поиск по ячейке с помощью HTML-тегов, например, вот содержимое ячейки:
Награжденная фирма/частное лицо:<div class='col-sm-5''><div c фирма/индия='row col-sm-12'>ТЕЛЕКОМЕГИПЕТ (372679)
(B7) Smart Village, 28-й км пустынной дороги Каир-Александрия, Гиза, Египет<b ry: Египет, Арабская Республика
Цена подписанного контракта
29 299 140 000 египетских фунтов
<дПодробная информация о бенефициарном владении
Я хотел бы вернуть только значение, которое следует после «Цены подписанного контракта», а именно 29 299 140 египетских фунтов.
Я пытался изменить некоторые формулы "MID", найденные в сети, но безуспешно. Я ценю вашу помощь.
решение1
Если ваши HTML-ячейки находятся в столбце A, то для извлечения текста между подписанной ценой контракта и «<dСведения о бенефициарном владельце» вы можете использовать это в столбце B:
=SUBSTITUTE(MID($A1,FIND("Signed Contract price",$A1,1)+LEN("Signed Contract price")+1,LEN($A1)),"<dBeneficial Ownership Details","")
Чтобы извлечь отсюда код валюты, можно использовать это в столбце C:
=LEFT(B1,3)
А чтобы извлечь саму сумму, вы можете использовать это в столбце D:
=NUMBERVALUE(SUBSTITUTE(RIGHT(B1,LEN(B1)-4)," ",""))
EDIT: Я полагаю, что текст ячейки был переформатирован, когда вы вставили его в свой пост, поэтому лучше заключить его в блок кода, например так:
class='spacing'></div><div class='spacing'></div><div class='row col-sm-12'><div class='col-sm-5''><div c Firm/Indass='row col-sm-12'><b>TELECOMEGYPT (372679)</b><br/>(B7) Smart Village, 28th km Cairo-Alexandria desert road,Giza, Egypt<b ry: Egypt, Arab Republic of<br/></br></div></div><div class='col-sm-5'></div><div class='col-sm-7'>Signed Contractprice<br/>EGP 29, 299,140.000</div><br/></div><d<b>Beneficial Ownership Details</b></div><br/></div>
В этом случае первая формула должна быть такой:
=LEFT(MID($A1,FIND("Signed Contractprice<br/>",$A1,1)+LEN("Signed Contractprice<br/>"),LEN($A1)),FIND("</div>",MID($A1,FIND("Signed Contractprice<br/>",$A1,1)+LEN("Signed Contractprice<br/>"),LEN($A1)),1)-1)