CIL*_*UEA 8 spreadsheet worksheet-function microsoft-excel
我想比较两个 Excel 电子表格
两者具有相同的列,顺序相同,但行不同。
我有一个包含 1,000 行和 50 列的电子表格,其中包括每行的唯一 ID 和个人数据(地址、电话号码等)。
我想将它与一年前提取的相同碱基进行比较。
我的目标是了解所有更改(例如,更改地址的人)。
我尝试使用电子表格(如此处所述:比较两个 excel 文件)但它不起作用,因为在我的“新”文件中有新行,而旧文件中有一些行不在新文件中。
电子表格与 Excel 行号进行比较。是否可以与第一列(唯一 ID)进行比较?
这是一个非常简化的示例:https : //filebin.net/g4w98251y9mfwug6
有两张工作表代表我的两个电子表格。
如您所见,两者都具有相同的列,但是:
橙色正是我想要的,但在这个例子中,我可以手动完成:比较 12 月和 1 月。在真正的电子表格中,我无法手动完成,因为更改、数据、行、列等太多,我将每月进行一次。
只有一列永远不会改变:A 列。
\xe2\x80\x99 您的电子表格使用 50 列会很方便,\n因为这意味着 #51、#52、\xe2\x80\xa6 列可用。\xc2\xa0\n您的问题很容易通过以下方法解决使用\xe2\x80\x9chelper列\xe2\x80\x9d,\n我们可以将其放入Column\xc2\xa0 AZ
(即列\xc2\xa0#52)中。\xc2\xa0\nI\xe2\x80 \x99ll 假设每张工作表上的行\xc2\xa01 包含标题\n(单词\ xe2\x80\x82 ID
、Name
、Address
等)\n所以你\xe2\x80\x99t 不需要比较这些\n(因为您的列在两张表中的顺序相同)。\xc2\xa0\nI\xe2\x80\x99ll 还假设(ID
唯一标识符)位于 Column\xc2\xa0 中A
。\xc2\xa0\n(如果它是\xe2\x80\x99t,答案变得有点复杂,\n但仍然相当简单。)\xc2\xa0\n在单元格\xc2\xa0中AZ2
(可用列,用于数据的第一行中),输入
=B2&C2&D2&\xe2\x80\xa6&X2&Y2&Z2&AA2&AB2&AC3&\xe2\x80\xa6&AX2\n
Run Code Online (Sandbox Code Playgroud)\n\nB2
列出从\xc2\xa0到\xc2\xa0的所有单元格AX2
。\xc2\xa0\n&
是文本连接运算符,\n因此如果B2
containsAndy
和C2
contains New\xe2\x80\xafYork
,则B2&C2
计算结果为AndyNew\xe2\x80\xafYork
。\xc2\xa0\n类似地,上面的公式将连接一行的所有数据\n(不包括ID
),给出的结果可能如下所示:
AndyNew\xe2\x80\xafYork1342\xe2\x80\xafWall\xe2\x80\xafStreetInvestment\xe2\x80\xafBankerElizabeth2catcollege\xe2\x80\xaf DegreeUCLA\xe2\x80\xa6\n\n
该公式很长,输入起来很麻烦,但您只需执行一次\n(但在实际执行之前请参阅下面的注释)。\xc2\xa0\n我展示了它,因为AX2
Column\xc2\xa0AX
是列\xe2\x80\xaf#50.\xc2\xa0\n自然地,公式应该涵盖除ID
。\xc2\xa0\n更具体地说,\nit 应包括要比较的每个数据列。\xc2\ xa0\n如果您有一个人\xe2\x80\x99年龄的列,\n那么每年每个人的年龄都会(自动?)不同,\n并且您\xe2\x80\x99不希望报告这一点。 \xc2\xa0\n当然,包含串联公式的辅助列\n应该位于最后一个数据列右侧的某个位置。
现在选择单元格\xc2\xa0AZ2
,并将其向下拖动/填充到所有 1000 行。\xc2\xa0\n并在两个工作表上执行此操作。
最后,在您想要突出显示更改的工作表上\n(我猜,根据您的说法,这是更新的工作表),\n选择您想要突出显示的所有单元格。\xc2\xa0\ n我不知道这是否只是 Column\xc2\xa0 A
,或者只是 Column\xc2\xa0 B
,\也不知道整个行(即,A
通过 \xc2\xa0AX
)。\xc2\xa0\n选择这些单元格在行\xc2\xa02到\xc2\xa01000\n(或数据最终可能到达的任何地方)上,\n然后进入\xe2\x80\x9c条件格式\xe2\x80\x9d\xe2\x86\x92\xe2\x80 \x9cNew\xe2\x80\xafRule\xe2\x80\xa6\xe2\x80\x9d,\n选择\xe2\x80\x9c使用公式确定要格式化的单元格\xe2\x80\x9d,然后输入
=IFERROR(VLOOKUP($A2,\'December 2017\'!$A$2:$AZ$1000,52,FALSE), "") <> $AZ2\n
Run Code Online (Sandbox Code Playgroud)\n\n进入 \xe2\x80\x9cFormat 值,其中该公式为 true 框\xe2\x80\x9d。\xc2\xa0\n这ID
从当前行\n获取值 (\xe2\x80\x9cJanuary\xe2\x80 \xaf2018\xe2\x80\x9d) 工作表(在 cell\xc2\xa0 中$A2
),\n在上一个A
(\xe2\x80\x9cDecember\xe2\x80\xaf2017\xe2\x80\) 的 Column\xc2\xa0 中搜索它x9d) 工作表,\n获取该行的串联数据值\n并将其与该行上的串联数据值进行比较。\xc2\xa0\n(当然AZ
是辅助列,\n52
是辅助列的列号,\nand1000
是 \xe2\x80\x9cDecember\xe2\x80\xaf2017\xe2\x80\x9d 工作表上的最后一行,其中包含数据\n\xe2\x80\x94 或更高;\ne.g,您可以输入1200
而不用担心是否准确。)\xc2\xa0\n然后单击 \xe2\x80\x9cFormat\xe2\x80\x9d\n 并指定所需的条件格式(例如,橙色填充)。
我做了一个只有几行和几个数据列的示例,\n其中的辅助列位于 Column\xc2\xa0 中H
:
观察到 Andy\xe2\x80\x99s 行的颜色为橙色,\n因为他从纽约搬到了洛杉矶,\nDebra\xe2\x80\x99s 的行颜色为橙色,因为她是新条目。
\n\n注意: \xe2\x80\x82\n如果一行可能在两个连续列中具有类似于the
和 的值react
,\n这可能会在接下来的一年中更改为there
和act
,\n这不会被报告为差异,\n因为我们\xe2\ x80\x99 只是比较连接的值,\n并且 ( thereact
) 在两张纸上是相同的。\xc2\xa0\n如果您\xe2\x80\x99 担心这一点,\n请选择一个不太可能出现在您的字符中的字符数据(例如|
),\n并将其插入字段之间。\xc2\xa0\n因此您的辅助列将包含
=B2&"|"&C2&"|"&D2&"|"&\xe2\x80\xa6&"|"&X2&"|"&Y2&"|"&Z2&"|"&AA2&"|"&AB2&"|"&AC3&"|"&\xe2\x80\xa6&"|"&AX2\n
Run Code Online (Sandbox Code Playgroud)\n\n产生的数据可能如下所示:
\n\n安迪|新\xe2\x80\xafYork|1342\xe2\x80\xafWall\xe2\x80\xafStreet|投资\xe2\x80\xafBanker|伊丽莎白|2|猫|学院\xe2\x80\xaf学位|加州大学洛杉矶分校|\xe2 \x80\xa6\n\n
并且将报告更改,因为the|react
\xe2\x80\xaf\xe2\x89\xa0\xe2\x80\xaf there|act
。\xc2\xa0\n您可能应该担心这一点,\n但是,根据您的列的实际内容,\n您可能有理由相信这永远不会成为问题。
完成此操作后,您可以隐藏辅助列。
\n 归档时间: |
|
查看次数: |
7184 次 |
最近记录: |