Vba 将与sheet2列(500)匹配的sheet1列(400)数据作为不同的列顺序进行比较

Vba 将与sheet2列(500)匹配的sheet1列(400)数据作为不同的列顺序进行比较,vba,excel,Vba,Excel,工作表1有400列,数据行多达10000行,我想与工作表2相比,它有600列,意味着以不同的顺序增加了列。 比较sheet1列数据与sheet2(列顺序不同),突出显示第2页中的差异,并将差异放在第3页中,突出显示单元格以防不匹配,我是VBA新手,需要您的支持 您可以在工作表1中将任何一列突出显示为主列而不是希望有人编写您的代码或从头教您,您可能会更幸运地研究如何使用Excel的内置工具来实现这一点。因此,我的答案是“不要使用VBA”-组织数据是Excel的目的,并且有很多您可能不知道的内置功能

工作表1有400列,数据行多达10000行,我想与工作表2相比,它有600列,意味着以不同的顺序增加了列。 比较sheet1列数据与sheet2(列顺序不同),突出显示第2页中的差异,并将差异放在第3页中,突出显示单元格以防不匹配,我是VBA新手,需要您的支持


您可以在工作表1中将任何一列突出显示为主列

而不是希望有人编写您的代码或从头教您,您可能会更幸运地研究如何使用Excel的内置工具来实现这一点。因此,我的答案是“不要使用VBA”-组织数据是Excel的目的,并且有很多您可能不知道的内置功能

首先,有一个(在某些版本中可用),它比较两个工作簿(或同一工作簿的两个版本),并帮助您查看和组织它们之间的差异。您还可以确定潜在的问题,例如公式或计算中的更改,或手动输入的值

也是内置的,请参阅,允许您将单独工作表中的结果汇总并报告到单个文档中。工作表可以在同一工作簿中,也可以在其他工作簿中。当您整合数据时,您可以组装数据,以便根据需要更轻松地进行更新和聚合

如果列在工作表之间的顺序不同,并且导致您(或内置工具)出现问题,则简单的解决方法是在两个工作表上都添加列。为此,您只需在排序选项中选择从左到右的

我肯定还有其他我没有想到的相关问题;查看您版本上可用的“所有”命令,看看是否还有其他您不知道的命令

还有一些方法也可能对这样的过程有所帮助。具体哪些取决于您的需求(其他人不可能在不了解您当前组织方法的细节的情况下提供建议)


插入函数对话框

在我脑海中,
HLOOKUP
索引
匹配
查找
中间
都可能对这项任务有益。(尽管如此,不需要VBA。)在官方网站上了解更多关于这些功能的信息,还可以具体查看查找功能部分

最后,有许多免费或付费的第三方加载项专门用于比较和合并工作表。例如,下面是Diffinginex提供的比较功能的示例


Excel用户手头有一项任务,并且认为有必要深入VBA,而没有意识到Excel已经提供了他们需要的功能,这是很常见的。根据经验,问问自己“这是独一无二的,还是有人以前可能需要做的事情?”如果不是独一无二的,很可能是它已经内置,或者在网上某个地方有一个现成的解决方案。

而不是希望有人编写代码或从头教你,如果您研究一下如何使用Excel的内置工具实现这一点,您可能会运气更好。因此,我的答案是“不要使用VBA”-组织数据是Excel的目的,并且有很多您可能不知道的内置功能

首先,有一个(在某些版本中可用),它比较两个工作簿(或同一工作簿的两个版本),并帮助您查看和组织它们之间的差异。您还可以确定潜在的问题,例如公式或计算中的更改,或手动输入的值

也是内置的,请参阅,允许您将单独工作表中的结果汇总并报告到单个文档中。工作表可以在同一工作簿中,也可以在其他工作簿中。当您整合数据时,您可以组装数据,以便根据需要更轻松地进行更新和聚合

如果列在工作表之间的顺序不同,并且导致您(或内置工具)出现问题,则简单的解决方法是在两个工作表上都添加列。为此,您只需在排序选项中选择从左到右的

我肯定还有其他我没有想到的相关问题;查看您版本上可用的“所有”命令,看看是否还有其他您不知道的命令

还有一些方法也可能对这样的过程有所帮助。具体哪些取决于您的需求(其他人不可能在不了解您当前组织方法的细节的情况下提供建议)


插入函数对话框

在我脑海中,
HLOOKUP
索引
匹配
查找
中间
都可能对这项任务有益。(尽管如此,不需要VBA。)在官方网站上了解更多关于这些功能的信息,还可以具体查看查找功能部分

最后,有许多免费或付费的第三方加载项专门用于比较和合并工作表。例如,下面是Diffinginex提供的比较功能的示例


Excel用户手头有一项任务,并且认为有必要深入VBA,而没有意识到Excel已经提供了他们需要的功能,这是很常见的。根据经验,问问自己“这是唯一的,还是有人以前可能需要做的?”如果不是唯一的,可能是它已经内置了,或者在网上某个地方有一个现有的解决方案。

谢谢你的建议,但我想