Excel 三态变量表示表格行状态

问题描述 投票:0回答:1

我正在尝试为具有 3 列和多个条件的表中的行返回一个三态变量数组。我用的是手机版excel。这没有可用的名称管理器,也没有条目验证。超过 4 行的公式编辑也很尴尬。

表行的状态(实际返回值并不重要,只是可以区分)是:-

“E”- 空,“V”- 有效,“I”- 无效

有效行将被拉到其他地方并使用。

标准列为 M1、M2、M3。规则是:-

空:所有三列都只包含“”。

有效:

- Columns M1 and M2 contain a currency value (2 significant decimals is good enough) and it may be zero (but not blank) and


- Column M3 as above, but it may also be blank.

无效:

- Not the above

我一直在尝试使用表和动态数组来做到这一点。输入数据随着时间的推移而增长,并且不一定是连续的。

理想情况下辅助列的数量非常有限。

我的示例中的实现不整洁。我已经尝试了各种过滤器以及与 byrow 和 map 和 makearray 的组合,但到目前为止还无法找到任何足够“优雅”的东西。

I can't find how to add sample, but here's a picture.

[Example][1]

Sample

excel filtering multiple-columns
1个回答
-1
投票

虽然 Excel 没有内置的三态变量,但这里有几种有效的方法来表示表行中的三态状态:

  1. 下拉列表:

创建一个下拉列表,每行的列中包含三个选项(例如“待处理”、“已批准”、“已拒绝”)。 限制用户只能选择三个值之一,确保三态表示。 2.条件格式:

应用条件格式规则以直观地区分三种状态: 为每个状态使用不同的颜色、图标或文本格式。 此方法在视觉上直观,但不会将状态存储为不同的值。 3.辅助栏:

为每个州添加单独的列: 使用复选框、TRUE/FALSE 值或符号(如“✔”或“✗”)来指示每列中的行状态。 这种方法提供了清晰的可见性,并允许根据状态进行过滤和排序。 4.自定义数据验证:

创建自定义数据验证规则,仅允许单元格使用三个特定值。 引导用户仅输入这些值,从而保持数据完整性。 5. VBA(适用于应用程序的 Visual Basic):

如果您熟悉 VBA,则可以创建自定义函数或宏来管理三态值: 将状态存储为数值(例如,0 表示待处理,1 表示已批准,2 表示已拒绝)。 使用条件格式或辅助列根据数值可视化状态。 选择最佳方法取决于:

您的具体用例 所需的用户交互级别 报告或分析需求 数据完整性要求 考虑这些因素来选择最适合您的 Excel 项目的方法。

© www.soinside.com 2019 - 2024. All rights reserved.