APP下载

在Excel中自制趣味扑克牌游戏计算题

2022-05-30平淡

电脑爱好者 2022年3期
关键词:黑桃扑克牌单元格

1.生成撲克牌

扑克牌可以借助UNICHAR函数来生成。新建一个工作表,定位到B1单元格并输入公式“=UNICHAR(127136+COLUMN(A1))”,然后向右填充公式到L1单元格,可以在B1:L1区域依次生成黑桃A到黑桃J的扑克牌(图1)。

接下来在M1单元格中输入公式“=UNICHAR(127136+COLUMN(M1))”,向右填充公式到N1单元格,可以生成黑桃Q和黑桃K的扑克牌。至此就生成了一个花色的所有扑克牌(13张)(图2)。

公式解释:

UNICHAR函数通过引用不同的数值,返回该数值所对应的Unicode字符。这里的扑克牌实际上就是一类Unicode字符。黑桃A对应UNICHAR(127137),黑桃K对应UNICHAR(127150),这里通过嵌套COLUMN文|平淡函数实现向右填充公式时引用数值依次加1。在Excel2019中,UNICHAR(127148)为不可识别的扑克牌,UNICHAR(1271149)对应的才是黑桃Q。在这里我们通过两段公式来生成所有的扑克牌,可以避免向右填充公式时生成UNICHAR(127148)所对应的扑克牌。

操作同上,在B2和M2单元格中分别输入公式“=UNICHAR(127152+COLUMN(A2))”和“=UNICHAR(127152+COLUMN(M2))”、B3和M3单元格中分别输入公式“=UNICHAR(127168+COLUMN(A3))”和“=UNICHAR(127168+COLUMN(M3))”、B4和M4单元格中分别输入公式“=UNICHAR(127184+COLUMN(A4))”和“=UNICHAR(127184+COLUMN(M4))”,然后填充公式并设置单元格的字体颜色,即可生成红桃、方块和梅花这3个花色的扑克牌(图3)。

2.随机抽取扑克牌

该游戏是从每个花色的扑克牌中随机抽取1张,这可以通过VLOOKUP函数来实现。定位到P1单元格并输入公式“=VLOOKUP(O1,A1:N1,RANDBETWEEN(2,14),1)”,然后下拉填充公式到P4单元格(图4)。

公式解释:

这里以O1单元格中的字符为基准,在A1:N1数据区域中查找对应的数值,查找列号使用随机函数RANDBETWEEN来生成,最小列为2,最大列为14。由于列号为随机数字(2~14),所以可以实现在P列中随机抽取1张扑克牌。

3.为扑克牌标记数字

扑克牌J、Q、K对应的数字分别为11、12、13,为了便于孩子识别,可以使用IFS函数将其转换为对应的数字。定位到O1单元格并输入公式“=IFS(P1=B1,1,P1=C1,2,P1=D1,3,P1=E1,4,P1=F1,5,P1=G1,6,P1=H1,7,P1=I1,8,P1=J1,9,P1=K1,10,P1=L1,11,P1=M1,12,P1=N1,13)”,下拉填充公式到O4单元格(图5)。

公式解释:

这里使用IFS函数对P1单元格中的扑克牌进行判断,如果P1=B1,就显示为数字“1”;P2=B2,就显示为数字“2”。以此类推,即可将所有扑克牌转换为对应的数字。

4.添加运算提示

扑克牌的四则运算组合非常灵活,我们可以通过VBA列出相关的解法,供孩子们参考。先到“https://share.weiyun.com/Et2Lnd7K”下载所需的代码文件,打开后全选代码并复制,接着在Excel中按下“Alt+F11”组合键打开VBA编辑窗口,依次点击“插入→模块”,将刚刚复制的代码粘贴到代码框中(图6)。

5.实际使用

返回Excel窗口,隐藏A:N列。这样在当前窗口中,我们只要按下F9键,在P列就会随机出现4张扑克牌(每按一次F9键,会再次出现随机的4张扑克牌,相当于重新发一次牌),孩子们发挥自己的想象力进行运算即可(图7)。

如果想查看参考答案,依次点击“开发工具→宏→test”(即通过上述VBA脚本生成的宏),再点击“执行”,然后在弹出的文本框中依次输入Q列显示的数字,即可得到计算结果(图8)。当然,这只是其中的一个参考答案,实际上有多种运算组合,只要最终答案符合要求即可。

猜你喜欢

黑桃扑克牌单元格
巧算扑克牌
牌友黑桃
混乱的扑克牌
牌友黑桃
算扑克牌的张数
玩转方格
玩转方格
浅谈Excel中常见统计个数函数的用法
哪张牌是A?
那一夜,以背叛的姿态做你贞洁的新娘