今天教两种制作乘法表的方法。
案例:做一个 99 乘法表,效果如下图 1 所示。
1. 在 B2 单元格中输入以下公式 --> 向右向下拖动复制公式:
=IF($A2<b$1,"",b$1&"*"&$a2&"="&$a2*b$1)
公式释义:
IF($A2<b$1,"":如果纵向的数值小于横向的数值,就留空,其他部分才显示内容;
b$1&"*"&$a2&"="&$a2*b$1:显示用连接符号 & 连接起来的各段内容,分别是:
b$1 单元格的值;
“*”号;
$a2 单元格的值;
“=”号;
$a2*b$1:两个单元格相乘的结果
* 公式不难,就是要注意单元格的绝对和相对引用。横向的标题要将行值绝对引用,列号相对引用;而纵向标题则正好相反。
这个方案的公式思路跟前一个是一致的,只是表现形式稍微改变了一下。
1. 像下图这样布局表格。值区域可以填充任何内容,目的只是为了逆透视的时候不报错。
2. 选中数据表的任意单元格 --> 选择工具栏的“数据”-->“从表格”
3. 在弹出的对话框中保留默认设置 --> 点击“确定”
表格已经上传至 Power Query。
4. 选中“列1”--> 选择工具栏的“转换”-->“逆透视列”-->“逆透视其他列”
5. 将“属性”列的格式修改为整数。
6. 选择工具栏的“添加列”-->“自定义列”
7. 在弹出的对话框中输入以下公式 --> 点击“确定”:
if [属性]<=[列1] then Number.ToText([属性])&"*"&Number.ToText([列1])&"="&Number.ToText([属性]*[列1])
else null
公式释义:
if [属性]<=[列1] ... else null:当“属性”列 <=“列1”的时候执行公式,否则返回空值;
then Number.ToText([属性])&"*"&Number.ToText([列1])&"="&Number.ToText([属性]*[列1]):
这是公式部分,Number.ToText 函数的作用是把所有的数值转换成文本显示出来;
& 符号的作用也是连接,
先后连接:“属性”列的值,“*”号,“列1”的值,“=”号,两列相乘的结果
8. 删除“值”列。
9. 选中“属性”列 --> 选择工具栏的“转换”-->“透视列”
10. 在弹出的对话框中按以下方式设置 --> 点击“确定”:
值列:选择“自定义”
点开“高级选项”--> 选择“不要聚合”
11. 选择工具栏的“主页”-->“关闭并上载”
这样就做出了乘法表。