Excel 逻辑用于从不同的存储桶中进行复杂绘制而无需重复存储桶

Excel 逻辑用于从不同的存储桶中进行复杂绘制而无需重复存储桶

我正在尝试创建一个 Excel 文件,它可以帮助我将 1944 枚硬币分成 648 捆,每捆 3 枚硬币。

这些硬币来自 10 个桶。桶 1 包含金币。桶 2、3 和 4 包含银币。桶 5、6、7、8、9 和 10 包含铜币。

这是包含示例数据的表格:https://docs.google.com/spreadsheets/d/13ORB2QrvPVHepTVRWhmvQg7asyl_aYQhs6_4Ae2IyQg/edit?usp=sharing

需要遵循 2 条分配规则:

  1. Bundles 表中的每个 Bundle 必须包含来自不同桶的 3 枚硬币
  2. Bundles 表中的每个 Bundle 必须包含以下任一内容:

a) 1 枚金币和 2 枚铜币

b) 1 枚银币和 2 枚铜币

c) 3枚铜币

你知道我可以使用什么公式和逻辑来自动化分发同时满足规则吗?

答案1

如果 x 是金币总数(且是 3 的倍数),则前 x 行(从第 2 行开始,BC 列和 D 列)的公式为

="B1-"&(ROW()-1)
="B"&(MOD((ROW()-2)*2+(COLUMN()-3), 6)+5)&"-"&(INT(((ROW()-2)*2+(COLUMN()-3))/6)+1)
="B"&(MOD((ROW()-2)*2+(COLUMN()-3), 6)+5)&"-"&(INT(((ROW()-2)*2+(COLUMN()-3))/6)+1)

然后用 y全部的假设银币分布在三个银桶中,并且每个银桶中分布均匀,则接下来的 y 行必须是

="B"& (INT((ROW()-2-x) / (y/3))+2) &"-"&(MOD((ROW()-2-x), y/3)+1)
="B"&(MOD((ROW()-2)*2+(COLUMN()-3), 6)+5)&"-"&(INT(((ROW()-2)*2+(COLUMN()-3))/6)+1)
="B"&(MOD((ROW()-2)*2+(COLUMN()-3), 6)+5)&"-"&(INT(((ROW()-2)*2+(COLUMN()-3))/6)+1)

从第 x+y+1+1 行开始,我们只处理铜桶。上一行中最后一个铜币是(使用替换 ROW = x+y+1 和 COLUMN = 4)

"B"&(MOD((x+y+1-2)*2+(4-3), 6)+5)&"-"&(INT(((x+y+1-2)*2+(4-3))/6)+1)

简化为

"B"&(MOD((m+n)*6-1, 6)+5)&"-"&(INT(((m+n)*6-1)/6)+1)

x=3m 和 y=3n 并进一步简化为

"B10&"-"&(m+n)

因此正如评论中所说,我们已经完全处理了前 m+n 行铜币。

从 x+y+1+1 行开始,我们将在 BC 和 D 列中使用相同的公式来处理剩余的铜币:

="B"&(MOD((ROW()-2)*3+(COLUMN()-2), 6)+5)&"-"&(INT(((ROW(A2)-2)*3+(COLUMN()-2))/6)+1+m+n)

我认为。我根本没有测试过这些公式 :))

相关内容