返回目录:excel表格制作
VBA是很不错的工具,会用VBA就能省很多事情,但是很多时候下,我们可以用函数也能方便地去解决的话,就不用再去麻烦VBA咯。
所以我们对于函数公式和系统自带工具的使用不能拉下哦。
上次我们说到了如何用VBA去制作一个乘法口诀表,「学点VBA」VBA也简单,来试试做个乘法口诀表,如果不用VBA只用系统自带的函数,你能想象到怎么制作吗?
通过辅助行列的单元格引用
我们先在第一行和第一列创建辅助行列,输入1到9的数字。
- 我们从B2的公式开始想,需要展现的结果是1x1=1,那么公式应该是=B1&"x"&A2&"="&B1*A2,公式里的引号记得换用英文输入法上的双引号。
- 我们再试想B3的公式,需要的结果是1x2=2,那么公式就应该是=B1&"x"&A3&"="&B1*A3,
- 试想C3的公式,需要的结果是2x2=4,那么公式应该是=C1&"x"&A3&"="&B1*A3,
看下规律,第一个公式里的B1和A2对应的变化,把不变的加上小锁,应该是B$1和$A2,最终公式是=B$1&"x"&$A2&"="&B$1*$A2
(其实仔细想想容易想到的,无论是哪个格子的公式,列上用的都是第一行(B$1),行上用的都是第一列($A2),这里我们照顾新手,多写了几个格子的公式进行对比。)
然后就能得到了下面的结果。
隐去多余的格子
如上图,多了一半的公式,如何隐去呢?
可以用条件格式,把那些B$1>$A2的格子设置单元格格式,设定字体颜色为白色就好。
或者是可以直接把这个判断放到公式里,加上函数的判断,直接就能够得出结果,公式改为=IF(B$1>$A2,"",B$1&"x"&$A2&"="&B$1*$A2)
不建辅助列制作
Row()和Column()函数可以直接得到当前单元格的行号和列号,用在此处也很方便,虽然很多人不很喜欢这种。(英语不好的我对这个列的单词记忆还是很难的,所幸Excel有对函数的索引提示,我还特意去看看确保我这个单词没输错)
如果列号大于行号,则输入空白,否则显示列号x行号=积,更换成公式就好了,=IF(COLUMN()>ROW(),"",COLUMN()&"x"&ROW()&"="&COLUMN()*ROW()),公式看着很长,但是你想想我说的那句汉语,再来看这个公式,也就是很简单的一句。
然后大功告成咯。
各位小伙伴学会了吗?
喜欢的话记得关注分享哦!