(個人總結更新)常用公式介紹:
1、獲取上一個月的日期:
=format(date(year(),month()-1,day()),"yyyy-MM-dd")
2、獲取今天前30天的日期:
=format(datedelta(now(),-30),'yyyy-MM-dd')
3、獲取當前年份:
=year(now(),"yyyy-MM-dd")
=int(left(format(now(), "yyyy-MM-dd"),4))
4、獲取當前月份:
=month(now(),"yyyy-MM-dd")
=int(mid(format(now(), "yyyy-MM-dd"),6,2))
5、獲取時間精確到毫秒(可用於設置UUID、主鍵等):
=format(now(), "yyyyMMddHHmmssSSS")
6、下拉框中公式獲取指定範圍的年份組:
近10年年份,升序: =range(year()-10,year())
近10年年份,降序: =range(year(),year()-10,-1)
7、下拉框選值後,單元格根據數據庫查詢結果,實時更換顯示值:
=sql(“DATABASE”,”SQL語句”,ROW,COL)
8、公式引用非父格數據時,引用到的數據是數組類型,需要用ARRAY()進行處理,不同應用場景會有不同應用,如用於比較前期和後期數據的對比。
在我的博客中有相關的應用場景的介紹,用於比較數據更新前後的對比,用於區分顏色,比較前後值的變化大小(+***)或(-***)。
如:=ABS($$$- INDEXOFARRAY('sheet1'!C2, ( A2- 1)*COUNT('sheet1'!C1) + INARRAY(C1, 'sheet1'!C1)))>0.01
比較兩份數據的前後差異(用於數據調整前後對比)
https://blog.csdn.net/wang1qqqq/article/details/89035073
9、獲取頁碼:
當前頁碼:=$$page_number
總頁碼:=$$totalPage_number
10、數據截取
獲取數據長度:=len(str)
從左側開始取指定長度的數據:=left(str,lenght) —— =left("2019-06-21",4) 結果:2019
從右側開始取指定長度的數據:=right(str,lenght) —— =right("2019-06-21",2) 結果:21
從指定位置開始取指定長度的數據:=mid(str,start,lenght) —— =mid("2019-06-21",6,2) 結果:06
12、將秒的數據轉換爲時分秒的格式
=string(int(time/3600))+"h"+int(time%3600/60)+"min"+int(time%3600%60)+"s"
—— time:18154 結果:5h2min34s
—— 如果數據是字符型,則對應將後綴秒“s”去掉,只留下時間數字就可以計算
13、查找文本是否包含某字符,以及字符位置
=find(str,text,start) —— 從指定start位置,查找str在text中的位置
如:
=find("b","a,b,cd,e") —— 結果:3
=find("b","a,b,cd,e",2) —— 結果:3
可用結果是否大於零來判斷是否包含字符,即 if(find(str,text,start)>0,"包含字符","不包含字符")