2016-04-21 67 views
3

因此,我有一个保存在Excel中的城市datalist,我想要在PowerBI中将其视觉化。但是,一些城市包含zipcode。这个zipcode只存在于数字中。电力查询 - 用空值替换所有数字

是否可以用“”(无)替换该列中的所有数字?或者另一种选择是检查值是否以数字开头,然后删除该单元格中的前4个字符?

任何想法如何做到这一点?

+0

解决方法是添加新列,使用IF(isNumber(tablename [colname])then null else tablename [colname]。请检查IF公式。 – Vasim

回答

3

您可以修剪列的开始(“自定义”)使用此命令条目:

Table.TransformColumns(NameOfPreviousStep,{{"Custom", each Text.TrimStart(_,List.Transform({0..9}, each Number.ToText(_)))}}) 
0

尝试这个用户定义函数

ALT + F11打开VBEditor插入>模块 然后在右侧面板中

Function RemoveNumbers(t As String) 
Dim i As Long, 
Dim newString As String 

For i = 1 To Len(t) 
    If Not IsNumeric(Mid(t, i, 1)) Then 
     newString = newString & Mid(t, i, 1) 
    End If 
Next i 
RemoveNumbers = newString 
End Function 

假设在A2,A3数据粘贴下面的代码... 把这个公式B2 = RemoveNumbers(A2)

0

只是一个想法,因为这不是你的原始问题,但如果你想拥有正确的城市而不是邮政编码,你也可以复制列,只保留数字,标记为邮政编码数据,从Bing Maps API获取结果并将“城市名称”结果合并回“最终”城市列。