是否有一个公式可以用来在条件成立的情况下剪切和删除一行数据并将其移至另一个表?我知道如何让数据简单地传输,但我试图避免数据中的重复项。
答案1
Excel 中的公式只能在其他地方查找数据并使用它,或者自己创建信息并使用它。它们无法以任何方式格式化所述数据。
(看似异常的情况TEXT()
实际上是将数据转换为另一种形式(在本例中为字符串),然后 Excel 以公式范围之外的某种方式对该形式进行操作。因此,它可以将“1”之类的数值更改为字符串,例如“1.000”,但该字符串受 Excel 应用于该单元格中字符串的任何格式(选择的或默认的)的约束。)
各种显示效果可以通过正式格式或条件格式的功能分别创建,但即使它们作用于公式,并且在 CF 的情况下,可以在其条件中使用公式,但执行这些操作的从来不是任何公式本身,而是格式或 CF 功能本身。
Excel 中的公式能够按照您的要求执行操作的唯一方法是,如果您的各个输出表的数据位于这些表以外的其他位置,并且这些表使用公式从这些表中检索属于它们的数据。
您不希望数据重复,但事实并非如此。数据存在于一个地方,并根据需要显示在其他地方。其他地方的任何变化都不会影响数据本身。只有对数据直接发生的更改才会对数据产生影响。类比可能是电视节目,或者更好的是,互联网上的节目。节目存在于一个地方,并根据需要显示在数百万个地方。在显示的地方所做的任何事情都不会影响节目。只有在它存在的单个位置的更改才会影响它。在显示端做出的选择可能会影响在这些地方显示的内容,但不会影响底层数据。
所以……如果您使用 Excel 作为数据存储,那么您将获得所需的重复数据。但是,大多数此类用途实际上都希望能够更改基础数据,因此出现了下一个问题。
而 VBA 就是你解决该问题以及沿着这条路径导致的所有问题的方法。
上述内容要求数据存储具有数据 PLUS 特性(可以是数据的值,而不仅仅是附加信息),以便您的输出表能够选择要显示的数据。您可以更改这些特性,使一个表不再包含该数据,而使第二个表开始包含该数据。虽然可以实现从一个地方剪切并粘贴到另一个地方的效果,但实际上并不需要进行任何剪切和粘贴。
如果没有 VBA,那么实现显示功能会非常困难,而且如果可能的话,实现任何交互功能都会非常麻烦。因此,对于您想到的几乎所有用途,正如Scott Craner
所说:VBA。