根据条件填充单元格

Posted

技术标签:

【中文标题】根据条件填充单元格【英文标题】:Fill cell based on condition 【发布时间】:2018-01-18 06:11:05 【问题描述】:

我不是程序员,我在网上寻找解决方案,但我找不到。 我需要根据条件列自动填充单元格的宏。

我在“订单”表中的 excel 中有数据:

WorkOrder  ID          Item2       Column4    Level3   NewColumn   
Number4    TOPLEVEL    Jonas       Station1   5
212121212  2           Station1    5          2
31212121   3           Station1    1          4
...         ...         ...         ...        ...

TextSome   TOPLEVEL    Jonas       Station1   5         
212121212  2           Station1    5          2
31212121   3           Station1    1          4
...         ...         ...         ...        ...

我需要宏,当在列 ID="TOPLEVEL" 中时,然后将 WorkOrder 中的值添加到 NewColumn 并将此列中的行填充到下一个 ID="TOPLEVEL"。像这样:

WorkOrder  ID          Item2       Column4    Level3   NewColumn   
Number4    TOPLEVEL    Jonas       Station1   5        Number4
212121212  2           Station1    5          2        Number4
31212121   3           Station1    1          4        Number4
...         ...         ...         ...        ...     Number4
                                                       Number4
TextSome   TOPLEVEL    Jonas       Station1   5        TextSome 
212121212  2           Station1    5          2        TextSome 
31212121   3           Station1    1          4        TextSome 
...         ...         ...         ...        ...     TextSome 

谁能帮我解决这个问题?

【问题讨论】:

【参考方案1】:

无需进入 VBA 解决方案,您就可以通过 Excel 函数完成此操作。一个非常简单的示例是将以下公式放入单元格 E2 中。

=IF(B2="TOP LEVEL",A2,E1)

然后填写 - 数字将自动调整。我假设上面的列是 A-E 列,并且您从第 1 行开始 - 如果您的工作表不同,则相应地调整 B2、A2 和 E1。

简单说明:如果该行是“TOP LEVEL”,则复制 ID,如果不是,则复制上面一行的代码,因为我们假设您的数据结构正确,并且上面的行是从前一行复制而来的“ TOP LEVEL”行。

【讨论】:

我知道这个技巧,但我需要自动化这个动作,因为这个表是网络查询。这就是为什么我需要宏 @SevaArve :您可以创建一个 VBA 解决方案来执行与上述公式等效的操作。您还可以创建一个 VBA 解决方案,在将 Web 查询结果放入后将上述公式插入到工作表中。 网页查询结果宏后在哪里添加这个函数? 我自己不使用 Web 查询,但会查找表明 Web 查询已完成的事件。然后,您可以在运行此函数的相应对象中创建自定义事件处理程序。同样,不使用网络查询,我不知道它是简单的 Worksheet_Change 还是其他东西。

以上是关于根据条件填充单元格的主要内容,如果未能解决你的问题,请参考以下文章

EXCEL如何根据条件自动设置单元格颜色

根据上面的非空白单元格填充空白单元格

根据另一个单元格的值自动填充单元格,不带公式

根据 Excel 中的另一个单元格自动填充单元格数据

根据相邻单元格中的值填充单元格

Excel中如何根据某一列的值对整行进行颜色填充?