VBA / excel / access编程非常新。我已经越来越多地进入Tableau,但是对于我现在需要的东西,Tableau是相当严格的。
我有一个零售地点的数据库......大约有42,000行数据可以追溯到十年左右。我要做的是创建一些代码,可以对商店标题进行文本搜索(比如说WalMart),并在一个空行中将它分配给像Dept Store,Restaurant等类别。
问题在于商店标题......没有一致性。例如,WalMart可能是沃尔玛沃尔玛沃尔玛商店#2739或您能想到的任何其他迭代。
在Tableau中,我一直在使用一个命令,如果Title包含“Wal”,Title包含“Mart”,那么retailtype =“Discount Chain”
这很有效,但我只能在计算中包含的行数。
任何关于在excel或访问中构建类似内容的帮助/建议都将非常感激。
富
答案 0 :(得分:0)
当然,我可以提供帮助。利用“正则表达式”和.upper()
和.lower
字符串方法来完成工作。
将上述所有内容与通配符“*”结合使用,并对某些结果使用Like
比较 -
Dim storetitle as String
Dim match as boolean
storetitle = Cells(1,3).Value
' start a loop here
... match = storetitle Like "*walmart*" 'where match is TRUE or FALSE depending on LIKE
利用一个函数来创建storetitle.upper(), storetitle.lower()
等......然后将它们传递给你的测试赛......
我给你一个参考,如果你需要,我会提出更多问题。 https://msdn.microsoft.com/en-us/library/swf8kaxw.aspx
字符串函数工具包: https://msdn.microsoft.com/en-us/library/dd789093.aspx 根据输入数据中的抽象/不一致,您可能需要使用字符串函数来获得创造性和重要性