我有一个有两个标签的工作簿。我的第一个选项卡每天都有不同的人添加行,其中一个单元格输入的是城市名称。每个人输入的城市名称不同,例如,纽约可以输入为NYC,NY,NwYrk,New York,NewYkCty等。在第二个选项卡上,我创建了一个“查找”数据库,其中第2行是拼写城市名称的正确方法,每次我看到有人如何拼写它的新版本时,我都会将其版本复制到它下面。我正在寻找一个公式或一种方法,在VBA中能够迭代通过数千行,我可以在一个月内对数千个城市的名字,我在我的迷你数据库,并提供给我的列号中找到的匹配,所以我可以从它运行偏移公式。还有一件事要注意,前一天的位置可以编辑,所以我将需要有这个总是更新,如果一个变化已作出的城市名称。
我已经尝试了下面的代码,但它需要5-8分钟来运行每个单元格,并继续需要更长的时间,因为更多的细胞得到添加。
With Sheets("Billings").Range("b1")
Set columnLocationList = Range(.Offset(1, 0), .End(xlDown))
End With
For Each columnLocations In columnLocationList
For Each locations In Sheets("Database Names").UsedRange
If columnLocations = locations Then
columnLocations.Offset(0, 1).Value = locations.Column
GoTo nextBill
End If
Next locations
nextBill:
Next columnLocations
字符串
标签:账单
| 城市名称|色谱柱编号| Column Number |
| --|--| ------------ |
| NYC| 3个| 3 |
| 洛杉矶国际机场|二个| 2 |
选项卡:数据库名称
| 洛杉矶|纽约| New York |
| --|--| ------------ |
| LA|数控| NC |
| | LAX | NYC |
2条答案
按热度按时间wa7juj8i1#
填充列索引
的数据
主要
字符串
帮助
型
Excel公式(Microsoft365)
型
或者是
型
ajsxfq5m2#
此解决方案使用Scripting.Dictionary来存储要查找的城市代码。除此之外,它遵循与OP使用的大致相同的结构和名称。
字符串