检查列中是否存在单元格值,返回同一行但不同列

时间:2016-05-27 19:28:26

标签: excel vba excel-vba

我在Excel中有大量数据来自供应商,但我只需要此工作表中的某些内容。我不想删除其他人使用的任何我不需要的数据,我不想因其他原因过滤数据。我已经尝试过其他一些Excel公式,我从其他用户的问题中找到了这些公式,但他们并没有完全按照我的需要去做。

来自供应商的所有数据都是通过文本文件和我未设置的连接来实现的,我们使用功能区的“数据”选项卡上的“全部刷新”按钮将新数据从文本文件导入Sheet1每天。

我创建了Sheet2,我计划将数据用于操作。我想要做的是Sheet2在Sheet1的B列中查找值“A”(我们称之为帐户标记)。如果找到值“A”,则输出位于值“A”所在的同一行的列A(帐号)中的单元格的值。我希望它跳过B列中没有“A”的所有行,因为B列中有其他几个对我没用的标记。

我需要重复相同的过程来从列AA中提取帐户余额但是一旦我弄清楚如何执行上述操作,我确信我可以使用相同的方法来提取余额信息。

我试图使用VLOOKUP,MATCH和其他几种方法,但我似乎无法弄清楚如何做到这一点。我担心的另一件事是,如果我得到正确的公式,它将在Sheet2上为Sheet1上的所有行提供空行,这些行没有“A”值,我不想要它去做。我只希望Sheet2包含我需要的信息。我有一种感觉,我可能需要做一个宏,但我不知道从哪里开始。

谢谢,

编辑截至05/31/2016

好的,我会尝试澄清一下。

表1: Data that is Input 表2: Data that is Output 如果你看一下Sheet 1的图像,B列就有了我要称之为标签的内容。我需要excel在B列中查找具有A标签的任何行并将帐号复制到Sheet 2(输出表),然后查看AA列并复制Balance以使我在第二张表上的结果看起来像我在第二张图片(输出表)中发布了图片。我将在表2中处理其他数据,但为了解释我的问题,我只需要这些信息。

如果您查看工作表1,您会注意到许多行的帐号是相同的,直到我到达一个新的帐号,该帐号用B列中的另一个A标记。所以我需要excel忽略所有其他行,直到它会在B栏中看到另一个A并重复收集帐号和余额的过程。

我希望这澄清了这个问题。

谢谢,

1 个答案:

答案 0 :(得分:0)

可以使用宏录制器开始编码。您需要一个记录操作。

如果我有一些数据

Team        Points  <space>  Team       
Leicester   81      <space>  Arsenal        
Arsenal     71      <space>     
Spurs       70      <space>     

然后我可以使用数据功能区“高级”,它会弹出一个弹出框,可以选择列表范围和条件范围。也可以选择动作复制到另一个位置。

enter image description here

运行这个我可以得到

Team        Points  <space>  Team       <space>   Team    Points
Leicester   81      <space>  Arsenal    <space>   Arsenal 71
Arsenal     71      <space>     
Spurs       70      <space>