Power Query: limpieza del inicio de los números de teléfono

Un usuario Pregunto ✅

Anónimo

Hola a todos,

Actualmente estoy haciendo un análisis sobre el costo de los números de teléfono a los que llamamos, pero no son los más limpios y necesito eliminar algunos detalles del frente del número en Power Query, por ejemplo, a veces tengo «9 * 007″ o » 907 «al comienzo de un número de teléfono móvil, que debe cambiarse a» 07 «. ¿Cómo puedo reemplazar los valores en la consulta de energía, usando una fórmula izquierda como lo he hecho a continuación en DAX?

Number = IF(LEFT('Outbound Calls'[PhoneNumber],4)="9*00",MID('Outbound Calls'[PhoneNumber],4,LEN('Outbound Calls'[PhoneNumber])-3)

,IF(LEFT('Outbound Calls'[PhoneNumber],3)="9**",MID('Outbound Calls'[PhoneNumber],4,LEN('Outbound Calls'[PhoneNumber])-3)

, IF(LEFT('Outbound Calls'[PhoneNumber],3)="900",MID('Outbound Calls'[PhoneNumber],3,LEN('Outbound Calls'[PhoneNumber])-2)

,IF(LEFT('Outbound Calls'[PhoneNumber],2)="9*",MID('Outbound Calls'[PhoneNumber],3,LEN('Outbound Calls'[PhoneNumber])-2)

, IF(LEFT('Outbound Calls'[PhoneNumber],1)="9",MID('Outbound Calls'[PhoneNumber],2,LEN('Outbound Calls'[PhoneNumber])-1),'Outbound Calls'[PhoneNumber])))))

Atentamente,

Jordán

themistoklis

@Anónimo

La fórmula de consulta de Power query debería verse así

if Text.Start (‘Llamadas salientes'[PhoneNumber], 4) = «9 * 00»

luego Text.Middle (‘Llamadas salientes'[PhoneNumber], 4, Text.Length (‘Llamadas salientes'[PhoneNumber]) -3)

else if Text.Start (‘Llamadas salientes'[PhoneNumber], 3) = «9 **»

luego Text.Middle (‘Llamadas salientes'[PhoneNumber], 4, Text.Length (‘Llamadas salientes'[PhoneNumber]) -3)

else if Text.Start (‘Llamadas salientes'[PhoneNumber], 3) = «900»

luego Text.Middle (‘Llamadas salientes'[PhoneNumber], 3, Text.Length (‘Llamadas salientes'[PhoneNumber]) -2)

else if Text.Start (‘Llamadas salientes'[PhoneNumber], 2) = «9 *»

luego Text.Middle (‘Llamadas salientes'[PhoneNumber], 3, Text.Length (‘Llamadas salientes'[PhoneNumber]) -2)

else if Text.Start (‘Llamadas salientes'[PhoneNumber], 1) = «9»

luego Text.Middle (‘Llamadas salientes'[PhoneNumber], 2, Text.Length (‘Llamadas salientes'[PhoneNumber]) -1)

demás «»

FelipeTreacy

Hola @Anónimo

Descargue el archivo PBIX de muestra con datos y código

Pruebe esto, funciona con los datos de muestra que creé en ese archivo PBIX

= Table.AddColumn(Source, "Custom", each Text.Replace(Text.Replace("*"&Text.Replace("*"&[Phone Num],"*9", ""),"*00","0"),"*",""))

phone-nums.PNG

Saludos

Phil

themistoklis

@Anónimo

La fórmula de consulta de Power query debería verse así

if Text.Start (‘Llamadas salientes'[PhoneNumber], 4) = «9 * 00»

luego Text.Middle (‘Llamadas salientes'[PhoneNumber], 4, Text.Length (‘Llamadas salientes'[PhoneNumber]) -3)

else if Text.Start (‘Llamadas salientes'[PhoneNumber], 3) = «9 **»

luego Text.Middle (‘Llamadas salientes'[PhoneNumber], 4, Text.Length (‘Llamadas salientes'[PhoneNumber]) -3)

else if Text.Start (‘Llamadas salientes'[PhoneNumber], 3) = «900»

luego Text.Middle (‘Llamadas salientes'[PhoneNumber], 3, Text.Length (‘Llamadas salientes'[PhoneNumber]) -2)

else if Text.Start (‘Llamadas salientes'[PhoneNumber], 2) = «9 *»

luego Text.Middle (‘Llamadas salientes'[PhoneNumber], 3, Text.Length (‘Llamadas salientes'[PhoneNumber]) -2)

else if Text.Start (‘Llamadas salientes'[PhoneNumber], 1) = «9»

luego Text.Middle (‘Llamadas salientes'[PhoneNumber], 2, Text.Length (‘Llamadas salientes'[PhoneNumber]) -1)

demás «»

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *