
Estoy intentando devolver una cadena buscando en una celda con etiquetas html, por ejemplo, este es el contenido de la celda:
PremiadoFirma/Individual:<div class='col-sm-5''><div c Firma/Indass='row col-sm-12'>TELECOMEGIPTO (372679)
(B7) Smart Village, km 28 de la carretera del desierto El Cairo-Alejandría, Giza, Egipto<b ry: Egipto, República Árabe de
Precio del contrato firmado
29.299.140.000 EGP
<dDetalles del beneficiario final
Solo me gustaría devolver el valor que viene después del "Precio del contrato firmado", que es 29.299.140 EGP.
Intenté modificar algunas fórmulas "MID" que encontré en línea, pero fue en vano. Aprecio tu ayuda.
Respuesta1
Si sus celdas HTML están en la columna A, para extraer el texto entre el precio del contrato firmado y "<dDetalles de propiedad efectiva", puede usar esto en la columna B:
=SUBSTITUTE(MID($A1,FIND("Signed Contract price",$A1,1)+LEN("Signed Contract price")+1,LEN($A1)),"<dBeneficial Ownership Details","")
Para extraer el código de moneda de ahí, puedes usar esto en la columna C:
=LEFT(B1,3)
Y para extraer el monto en sí, puedes usar esto en la columna D:
=NUMBERVALUE(SUBSTITUTE(RIGHT(B1,LEN(B1)-4)," ",""))
EDITAR: Supongo que el texto de la celda se volvió a formatear cuando lo pegaste en tu publicación, por lo que es mejor encerrarlo en un bloque de código, como este:
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>
En este caso, la primera fórmula debería ser esta:
=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)