我有一个团队正在手动确认票证并使用工作表来组织信息。工作表中有一些预制条形码,我们要向其分配订单,但是我们的系统不允许我们为同一场演出手动输入相同的座位信息。即。对于21年5月25日下午6点的放映时间,我们只能获得一张第一排座位1的门票。
因为我们必须手动执行此操作,所以我们不确定在100种可能性中已经使用了哪些行或座位。第1-10排和座位1-10。
我希望能够以表格形式输入放映时间,并且公式可以为我提供下一个开放的行/座位组合。因此,该公式将读取日期/时间输入,并读取工作表中同一日期/时间的行/座位组合,并根据已使用的行给出一个数字1-10和1-10。
Here是带有条形码和几行数据的示例工作表,以(希望)更好地了解我的要求。
谢谢
答案 0 :(得分:1)
这并不是您所要的,但我相信它可以解决您问题的核心(我们不确定自己已经使用了哪些行或座位。)
在代码中,它类似于:
id
列
=D2&"_"&E2&"_"&F2
D,E和F列分别代表日期,行和座位列。
available?
列
=IF(COUNTIF(K2:K9,K2)>1,"not available","available")
第K列是您的id
列。
在整个列中都应用这两个,只要每次available?
列会立即告诉您是否为事件日期使用了座位/行时,就以相同的格式输入日期。
答案 1 :(得分:1)
这里的an example可以满足您的需求。
它将数据库功能 DMAX 应用于先前的门票销售集(称为数据库)。在这里,DMAX筛选数据库以仅查找那些与您在D列中输入的 Show 匹配的记录,然后找到编号最高的行/座位组合,并向您返回下一个可能的行/座位组合在绿色列中。
注意:这将始终返回下一个更高的座位。如果您在分配前一个座位时在座位顺序上有空缺,它将忽略这些空缺,并且仍然在先前分配的最高座位之后分配下一个座位。
为方便起见,我在D列上设置了条件格式。它有助于在数据库中直观地查找具有相同日期和时间的节目。您可以使用菜单栏上的“格式:条件格式”将其删除。
答案 2 :(得分:0)
我有一些适合您的东西。 查看工作表中更新的Fullfillment-GK标签。 有点混乱,但是如果朝着正确的方向前进,可能会被清理很多。
K1中的关键公式是:
={"Sorted Available Seats";
QUERY(
SORT(
{FILTER(
M2:M,ISERROR(MATCH(M2:M,L2:L,0))),
SPLIT(FILTER(M2:M,ISERROR(MATCH(M2:M,L2:L,0))),"~",0,0)},
3,1,4,1),
"SELECT Col1",0)}
步骤如下。
请注意,有许多不同的方式来处理此数据。如果将“行”和“座位”列合并,并且仅将其视为一个组合值,则可能会更简单。年份在日期中是否有意义?例如,如果保留但隐藏了年份,则可能会稍微清除显示内容。
我想不出一种数据验证方法来在不使用代码的情况下将客户行上可能的“行”和“席位”值限制为仅可用席位。
让我知道这是否有用,也许我可以对公式进行一些清理,并尝试消除中间列。