這個需求是一位在當前抗疫一線的朋友提出的,和各位分享一下。
需求情況
因為眾所周知的原因,他每天都需要為照顧的小區居民購買、運送生活物資。小區居民通過表單的形式提交自己每日的需求,最終彙總到一張excel表裡,如下圖:
每一行就是一戶居民當日需要採購的物資
物資的**在另外一張名叫「**」的表當中如下:
這位朋友需要做的就是把每一戶要採購的物資總金額計算出來,然後再進行後面的工作。
解決思路
大致思索一番,其實這個問題可以有多個辦法來解決。
方法一:excel函式
這個辦法有點繁瑣,但是簡單有效。
以第一戶為例,把總金額計算在i2單元格,公式為:
公式裡的if函式的作用是,對每項物資進行判斷,等於「/」的就為0,不等的就為1,然後再和**相乘,最後加總求和。
然後再向下拖即可。
方法二:sumproduct函式
這個方法和上面的思路一樣,但是公式更簡化。
還是以第一戶為例,把總金額計算在k2單元格,公式為
sumproduct()函式的作用就是乘積彙總,–(e2:h2<>」/」)表示篩選不等於「/」的專案,標記為1;等於「/」的專案,標記為0;然後再和對應的**相乘,最後彙總。
然後再向下拖即可。
方法三:vba
思路基本一致,使用更加靈活,一鍵完成到位。
為了方便,就直接呼叫方法二中的sumproduct()函式。
sub caijia1()
range("q2", "q10").clearcontents
j = [a2].end(xldown).row
for i = 2 to j
range("m" & i).value = evaluate("sumproduct(--(e" & i & ":h" & i & "<>""/""),**!$a$3:**!$d$3)")
next
end sub
這樣的好處是不用再手動的輸入函式,然後再往下拖。只需要一鍵即可完成計算,即使是資料有增加、或者減少,vba都可以自動識別,省心省力。
暫時就想到這麼多。如果你也有好的辦法,歡迎告訴我!
excel vba 例項(24) – 新股(債)中籤一鍵批量查詢
excel vba 例項(23) – 一鍵批量提取word**內容
excel vba 例項(22) – 一鍵篩選其他工作表或工作簿的資料
歡迎交流!
Python 快速合併多個Excel檔案
注意 需要安裝pandas,openpyxl這兩個第三方類庫,否則會報錯。實現 coding gbk import os import pandas as pd dir input 請輸入待合併檔案的路徑 n 設定工作路徑 frames 存放匯入的檔案 for root,dirs,files in ...
excel如何快速選定區域
方法 1 使用 ctrl shift 快捷鍵,選中該單元格及以上 以下的所有資料 2 使用 ctrl shift 快捷鍵,選中該單元格及左邊 右邊的所有資料 3 使用 ctrl a 快捷鍵,選中整個資料區域。本教程操作環境 windows7系統 microsoft office excel2013版...
如何快速把多個excel表合併成乙個excel表
有這麼一種情況,就是我們有很多張excel,而且excel表裡面的公式基本一樣,我們就想快速的把這些excel合併在一起,意思在合併在乙個excel頁面,這樣可以方便我們分析和統計,其實利用excel表的巨集計算就可以實現。下面我們就來一起解決這個問題。找到工具欄上面的 執行 下的 執行子過程 使用...