![强制两个单独的表具有相同数量的行](https://linux22.com/image/1527735/%E5%BC%BA%E5%88%B6%E4%B8%A4%E4%B8%AA%E5%8D%95%E7%8B%AC%E7%9A%84%E8%A1%A8%E5%85%B7%E6%9C%89%E7%9B%B8%E5%90%8C%E6%95%B0%E9%87%8F%E7%9A%84%E8%A1%8C.png)
答案1
因此,假设我从表 1 中删除一行,它也应该从表 2 中删除同一行。
同样,如果我在表 1 中添加一行,它也应该在表 2 中添加一行。
表中的其他列将不会包含相同的数据。
是的。创建表。选择“数据”选项卡,从表中,生成一个从源表中提取数据的新查询表。
程序
1a. 创建表
1b. 为工作表命名,命名为有用的名称(例如 DB)
2a. 选择数据选项卡。
2b. 在“获取和转换”部分中选择“来自表”。
2c. 为该查询命名,命名为有用的名称(例如 Table_DB)-- 参见 img_3
2d. 关闭并加载查询。-- 参见 img_4
3. 这是您的新表,是步骤 1 中原始表的新查询。此表是您现有表的工作副本。-- 名为 Sheet5 image_5
4a. 将您的新工作表 Sheet5 重命名为有用的名称,例如 DB_QUERY。参见图片 6。
4b. 对 DB_QUERY 表执行查询。选择 Age 下拉箭头以执行查询。
4c. 在查询选择中选择“大于”。让我们尝试只查看年龄大于 30 岁的人。-- 参见 image_6
4d. 这是查询。输入 30。按 Enter 接受查询。 -- 参见 image_7
5. 注意,在步骤 4 中,只有两个人的年龄超过 30 岁。但是 Stan 辞职了。让我们从这个 DB(数据库)中删除 Stan。不要从查询中删除。通过维护其来源来维护查询的完整性;来自步骤 1 的 DB 表。5b
. 通过单击正确的工作表选项卡选择 DB。-- 参见 image_8
5c. 从表中删除 Stan。-- 参见 image_9
5c-1. 同样,如果您添加一个人,该人也将添加到查询表中。5d
. Stan 现在已从 DB 表中删除。-- 参见 image_10
6a. Stan 现在已从 DB 表中删除。但是,似乎 DB_Query 并未显示这些更改?-- 参见 image_11
6b. 实际上,DB 和 DB_Query 表都是同步的。您只需刷新 DB_Query;通过单击刷新图标刷新查询 -- 参见 image_12
如果查询无法像步骤 6 中那样直观地显示,请选择“数据”选项卡,然后在“获取和转换”部分中选择“显示查询”。
参考下面的图片
图片 1
图片 2
图 3
图片 4
图片 5
图片 6
图片 7
图片 8
图片 9
图片 10
图片 11
图片 12
答案2
您只需将表格放在不同的工作表上,并具有相同的列和行位置。
添加或删除条目时,选择所有需要操作的工作表(Ctrl + 单击单个工作表,如果有多张工作表,则Shift + 单击第一个目标工作表和最后一个目标工作表),然后正常输入或删除。
操作将在所有选定的工作表上执行。已针对 Microsoft Excel 2016 进行测试。
答案3
如果不看表格的话,很难给出一个像样的答案,但从听上去,我认为最简单的解决方案是使用三个表格。创建一个新表格,增加table 1
列2
- n
。table 2
这将是您输入或删除数据的唯一地方。假设这是在一个名为raw data
然后在新工作表上创建一个与原始表格完全相同的新表格table 1
。在此工作表的单元格中输入类似以下公式:
=IF('raw data'!A1<>"",A1,"")
对执行相同操作table 2
,即使用该公式创建一个新工作表,但适当偏移列。
我认为使用 VBA 进行此操作只会不必要地使您的电子表格复杂化,并会涉及“隐藏”功能,这可能会导致将来调试或移交困难。