MICROSOFT

EP06. “Automated Invoice 自动化发票”

首页 Microsoft 工具 Excel · Basics · Templates · EP06
约 5 分钟· #EP06#Excel#Templates
🔒 登录后可标记已读
  • 在 EP05 手动发票的基础上,这篇教怎么用 Data Validation 下拉列表 + VLOOKUP 函数,做到"选产品编号自动带出产品信息和价格"的自动化发票
  • 前置知识是 EP05 的发票排版和 VLOOKUP 函数基本用法
  • 学完能省掉逐笔手动查价格、手动打字的时间

重点内容


适用版本

桌面版通用(Excel 365 / 2021 / 2019 等)。


第一步:准备产品资料表

在 Products 工作表里列出产品编号、名称、价格等信息。


第二步:在发票工作表设置产品编号下拉列表

  1. 在 Invoice 工作表选中 A13:A31(品项编号所在的整个范围)
  2. Data 选项卡 → Data Validation
  3. Allow 选择 List
  4. Source 选取 Products 工作表的 A2:A5 范围
  5. 📌 把范围的结束行从 "5" 改成 "1048576"(Excel 表格最大行数),这样以后在 Products 工作表新增产品,下拉列表会自动涵盖,不用回来改 Source 范围

[截图:Data Validation 对话框,Source 栏显示 Products!$A$2:$A$1048576 的界面]


第三步:用 VLOOKUP 带出产品描述

在 B13 输入 VLOOKUP 公式,在 Products 工作表的 $A:$C 范围里查找 A13 对应的产品编号,col_index_num 设为 2(取第 2 列,也就是产品名称)。


第四步:用 VLOOKUP 带出价格

在 C13 输入类似的 VLOOKUP 公式,col_index_num 改成 3(取第 3 列,也就是价格)。


第五步:计算金额

在 E13 输入公式,让金额等于「价格 × 数量」(Price 和 Quantity 两个单元格相乘)。


第六步:把公式复制到其他行

  1. 选取 B13:E13 这一整行
  2. 拖动填充手柄往下拉到第 31 行
  3. 如果格式跑掉,用 Format Painter(格式刷)把第 13 行的格式重新套用到其他行

[截图:完成后的自动化发票效果,选中产品编号后名称和价格自动带出、金额自动算好的界面]


函数速查

函数语法用途例子
VLOOKUP=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])垂直查找,取指定列的值=VLOOKUP(A13, Products!$A:$C, 2, FALSE)

学完你会

  • ✅ 会把下拉列表的 Source 结束行改成 1048576,让新增产品自动被列表涵盖
  • ✅ 会用 VLOOKUP(配合绝对引用)自动带出产品名称和价格,不用手动查
  • ✅ 会用「价格 × 数量」算出每行金额,再拖填充手柄套用到其他行

常见错误

  • Data Validation 的 Source 范围结束行没有改大(还停留在原本的 A2:A5),新增产品后下拉列表没有跟着更新
  • VLOOKUP 的查找范围没有用绝对引用($A:$C),公式往下复制后范围跟着偏移,查找结果全部出错
  • VLOOKUP 最后一个参数(range_lookup)没设为 FALSE,产品编号如果不是完全排序好的清单,容易查到错误的相近值

Sources

Blog / Website:

  1. Automated Invoice