Power Query - 用 null 替换所有数字
Power Query - replace all numbers with null
因此,我在 Excel 中保存了 datalist
个城市,我想在 PowerBI
中对其进行可视化。但是,某些城市包含 zipcode
。这个zipcode
只存在于数字中。
是否可以用“”(无)替换该列中的所有数字?或者另一种选择是检查值是否以数字开头,然后删除该单元格中的前 4 个字符?
知道如何做到这一点吗?
试试这个用户定义函数
Alt+F11 打开VBEditor Insert > Module
然后在右侧面板粘贴下面的代码
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
=删除数字(A2)
您可以 trim 使用此命令开始您的列 ("Custom") 条目:
Table.TransformColumns(NameOfPreviousStep,{{"Custom", each Text.TrimStart(_,List.Transform({0..9}, each Number.ToText(_)))}})
只是想一想,因为这不是您最初的问题,但如果您想使用正确的城市而不是邮政编码,您也可以复制该列,只保留数字,将其标记为邮政编码代码数据,从 Bing 地图 API 取回结果并将 "city name" 结果合并回 "final" 城市列。
因此,我在 Excel 中保存了 datalist
个城市,我想在 PowerBI
中对其进行可视化。但是,某些城市包含 zipcode
。这个zipcode
只存在于数字中。
是否可以用“”(无)替换该列中的所有数字?或者另一种选择是检查值是否以数字开头,然后删除该单元格中的前 4 个字符?
知道如何做到这一点吗?
试试这个用户定义函数
Alt+F11 打开VBEditor Insert > Module 然后在右侧面板粘贴下面的代码
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 =删除数字(A2)
您可以 trim 使用此命令开始您的列 ("Custom") 条目:
Table.TransformColumns(NameOfPreviousStep,{{"Custom", each Text.TrimStart(_,List.Transform({0..9}, each Number.ToText(_)))}})
只是想一想,因为这不是您最初的问题,但如果您想使用正确的城市而不是邮政编码,您也可以复制该列,只保留数字,将其标记为邮政编码代码数据,从 Bing 地图 API 取回结果并将 "city name" 结果合并回 "final" 城市列。