Excel 基于非用户输入的连接
我有一个excel文件,包含4张工作表。基于数据组织的3张数据表。然后1张纸供用户输入。每个Orgs表都有多达20列A-T的数据,我想连接这些数据。因此,基本上,如果用户在输入页面的a栏中输入一个值,那么U栏中的其他三张表将进行填充。例如,假设A列有一个值,F列和H列。这些列将在其他3张表的U列中连接 我目前有一个公式,在Excel中用一堆IF语句来实现这一点,但这非常缓慢,因为一些数据集的表非常大。一个具有超过140K行数据的数据库。因此,我希望找到一种使用VBA的方法来检查输入表中的哪些列已填充,然后在此基础上连接到数据表中。我有一个搜索按钮,并关闭了自动公式,因此搜索按钮目前会计算所有公式。所以我可以运行这个代码了。但我对VBA了解不多,如果它能加快这一过程,那么就目前而言,这可能需要一点时间。我附上了一些输入和数据表的截图。但是数据被隐藏了 目前,我在Excel公式运行后进行了一些查找,以将值返回给用户。组织1和组织2都有20列A:T,组织3有18列A:R。所以这是3个数据表中唯一的不同 再一次,我要做的就是将用户输入的任何列连接到每个工作表中,每个工作表上有数千行 输入表 组织1和组织2的工作表是什么样的 ORG3表是什么样子的Excel 基于非用户输入的连接,excel,vba,concatenation,Excel,Vba,Concatenation,我有一个excel文件,包含4张工作表。基于数据组织的3张数据表。然后1张纸供用户输入。每个Orgs表都有多达20列A-T的数据,我想连接这些数据。因此,基本上,如果用户在输入页面的a栏中输入一个值,那么U栏中的其他三张表将进行填充。例如,假设A列有一个值,F列和H列。这些列将在其他3张表的U列中连接 我目前有一个公式,在Excel中用一堆IF语句来实现这一点,但这非常缓慢,因为一些数据集的表非常大。一个具有超过140K行数据的数据库。因此,我希望找到一种使用VBA的方法来检查输入表中的哪些列已
感谢您的帮助。我在这里看到了VBA连接,但与此任务完全不同。VBA通常比等效的本机函数慢。当然,可能有一种更聪明的方法来处理它。您可以使用
工作表.Change
事件。将其设置为检查Target
(发生更改的单元格/单元格)是否在用户输入范围/列中。如果是,则更新同一行中连接单元格的值(或者如果Target
是多个单元格,则检查并更新Target
中的每个单元格)。请参阅Microsoft提供的。