[Excel]如何找到非固定空白格數列的條件數據? 以月份報價表單為例

在群組中看到上述問題,研判應是一份隨月份變動的產品報價表單,空白欄可能表示該月份價格與上個月份一致。這個問題是需要取得最近一次單價和倒數第二次單價,常用且實務的excel案例值得紀錄。

最近一次單價:

INDEX(B2:G2,1,LARGE(IF(ISBLANK(B2:G2)=FALSE,COLUMN(B2:G2)-1,0),1))

函式說明:
  1. IF(ISBLANK(B2:G2)=FALSE,COLUMN(B2:G2)-1,0)

B2:G2做是否為空白格的篩選,空白格顯示為0,非空白格則回傳欄號,一併取得排序。

2.LARGE(IF(ISBLANK(B2:G2)=FALSE,COLUMN(B2:G2)-1,0),1)

有了排序,接著就好辦了。利用Large函數找出最大欄號值,這個最大欄號值的意義其實就是最大月份的意思。換言之,即是將最近一次轉換成最大欄號值來表示。

3.INDEX(B2:G2,1,LARGE(IF(ISBLANK(B2:G2)=FALSE,COLUMN(B2:G2)-1,0),1))

利用Index函式取得在B2:G2數列中對應最大欄號值的儲存格值。

倒數第二次單價:

INDEX(B2:G2,1,LARGE(IF(ISBLANK(B2:G2)=FALSE,COLUMN(B2:G2)-1,0),2))

若瞭解取得最近一次單價的原理,倒數第二次單價只是取得次大欄號值,因此僅需要將large函式中的參數1改成參數2。

相关推荐
奔跑的呱呱牛19 小时前
前端/Node.js操作Excel实战:使用@giszhc/xlsx(导入+导出全流程)
前端·node.js·excel·xlsx·sheetjs
Metaphor69221 小时前
使用 Python 设置 Excel 表格的行高与列宽
开发语言·python·excel
SunnyDays101121 小时前
如何使用 C# 创建、修改和删除 Excel 中的 VBA 宏(无需Microsoft Excel)
c#·excel·vba宏·创建vba宏·修改vba宏·删除vba宏
xinixini1 天前
2026年马年日历模板大全 可编辑Excel/Word/PSD/PDF素材合集
pdf·word·excel·日历
李昊哲小课1 天前
Python办公自动化教程 - 第7章 综合实战案例 - 企业销售管理系统
开发语言·python·数据分析·excel·数据可视化·openpyxl
葡萄城技术团队2 天前
Excel 科普:循环引用是“错误”还是“黑科技”?
excel
李昊哲小课2 天前
Python办公自动化教程 - openpyxl让Excel处理变得轻松
python·信息可视化·excel
李昊哲小课2 天前
Python办公自动化教程 - 第1章 openpyxl基础入门 - 第一次用代码操控Excel
开发语言·python·excel·openpyxl
weitingfu2 天前
Excel VBA 入门到精通(二):变量、数据类型与运算符
java·大数据·开发语言·学习·microsoft·excel·vba
升职佳兴2 天前
Excel:VLOOKUP 学习笔记 · 完整版
笔记·学习·excel