如何创建Vlookup公式以用新的

时间:2015-07-23 13:56:34

标签: excel excel-formula vlookup

我的公司收到来自不同提供商的每周更新。他们都提供相同类型的数据,但顺序不同(例如:一家公司将给出A列=名称/列B =数量/列C =货物。当另一个将给出A列=货物/ B列=名称/列C =数量)。我想我需要创建一个Vlookup公式,它会自动找到新数据,并在正确的位置用它替换旧数据(如果数据从上周改变)。我知道公式必须与每个提供商不同,因为它们都有不同的格式。 为了帮助您,我将在模板中编写列的顺序,然后是其中一个提供程序的顺序: 我们的模板

A:Reference Number
B:IMO
C:Vessel Name
D:Commodity
E:Product detail
F:Quantity
G:Departure country
H:Departure port
I:ETA
J:ETB
K:ETD
L:Current status
M:Destination Continent
N:Destination Country
O:Destination Port
P:Charterer
Q:receiver

提供者模板:

B:Vessel name
C:ETA
D:ETB
E:ETD
F:Departure Country
G:Departure port
H:Destination Continent
I:Destination Country
J:Destination Port
K:Commodity
L:Product detail
M:Quantity
N:Name of vessel
O:IMO
P:Reference code
Q:Charterer
R:Current status.

知道怎么做???

1 个答案:

答案 0 :(得分:0)

好的,基于您上次的回复,我将提供一些潜在的解决方案,并提供一些警告和假设。

警告

如果数据来自多个源工作簿,则VBA解决方案可能最佳。但是,如果这种情况不经常发生,则不会为您节省很多时间来进行VBA解决方案。此外,如果您不熟悉VBA,我建议您只需粘贴其他人的在线代码 - 因为它可能是恶意的,或者它可能导致您无法真正完成工作代码出现了一些问题,无法修复。

<强>假设

- 我将假设每个供应商都在其自己的选项卡上包含在同一个工作簿中。 - 我还假设数据会有些一致,正如您在上述问题的评论中所指出的那样。 - 现在,我假设您只需要来自每个供应商的几个字段,并且这些字段在供应商之间总是相同的。这不一定是使用这种方法所必需的,但它可以简化一些事情并让你开始。现在,我们假设您只关心供应商名称,货物类型,数量和预计发货日期。

建议的工作流程

我对做迷你数据库的人的一般建议&#39;在这样的Excel中,为它们的数据转储,工作公式表以及用于显示/打印目的的摘要选项卡保留单独的选项卡。保持您的编码解决方案仅达到您自己理解的水平,并且不要丢弃原始资料书。理想情况下,如果有人正在审查/审核您的工作,他们应该能够简单地复制和粘贴随机数据样本,并立即查看它是否正在获取正确的数量。

因此,我的建议是为每个供应商提供一个摘要标签,一个数据转储标签(也称为&#34;着陆页&#34;),以及每个供应商的中间公式标签。

数据转储标签应该包含与供应商完全相同的数据,而不进行任何调整。格式化数据转储选项卡以匹配原始数据(而不是格式化原始数据以匹配数据转储选项卡)将意味着每次更新它时,都需要最少的干预。因此,这与完全自动化相比只有一步之遥。

每个供应商的中间公式标签应采用与其他中间公式标签相同的格式。这样可以在主摘要选项卡上轻松拾取。中间公式选项卡的目的是让您有机会查看该供应商的Excel数据转储,并确定提取您关注的字段以供审核的最佳方式。

摘要标签将只是所有供应商标签的列表,显示您关注的各个字段的网格。

完成步骤

使用&#34;提供商模板&#34;在您的问题中,将该选项卡转储到&#34;提供商A数据转储&#34;标签

在&#34;提供者A公式&#34;选项卡,我们将首先输入提供商的名称作为工作表名称。在单元格A1中,键入&#34;索引&#34;。在单元格B1中,键入&#34;参考#&#34;。在单元格C1中,键入&#34; Cargo Type&#34;。在单元格D1中,键入&#34; Quantity&#34;。在单元格E1类型&#34;发货日期&#34;。

A列将保留一个等于该供应商发货的订单数量的索引。 A2中的公式为&#34; = 1&#34;,A3中的公式和下载的公式为:

=if(row()<=count('Provider A Data'!M:M),row()-1,"")

这会计算您所在的行,如果您所在的行小于原始数据标签的数量字段中包含数字的总行数,则会显示该行号( -1表示标题)。否则,它将显示空白。

对于其余部分,如果您的数据真正一致,那么您只需将第2行中的第一个单元格设置为等于另一个选项卡中的特定单元格即可。即:B2,显示参考ID,可以简单地说:

='Provider A Data'!P2

然后向下拖动它,它会在你拖动时捡起它。您将在A列中使用索引键以确保拖得足够远。

有一些公式解决方案(如vlookup)可用于在原始数据选项卡中查找特定的参考ID,并从另一列中提取确切的行,但如果您只是简单的话,则不需要使用它们将事物保存在数据转储选项卡中显示的相同行顺序中。

然后,对于摘要选项卡,只需创建一些列,从每个供应商中提取金额。在您第一次设置工作簿之后,您需要执行的更新操作将在公式选项卡中向下拖动行。如果您对如何实现这一目标有进一步的具体问题,请在特定问题中提出问题,并注意您尝试做什么,以及哪些部分失败了。

我希望这可以帮助你开始。