offset從指定區域獲取資料(自動計算資料)

2022-02-06 13:09:12 字數 1380 閱讀 8193

1、offset用於從指定區域獲取乙個檢視。

offset(reference, rows, cols, [height], [width])

必選:可選:

[height]:返回檢視的高

[width]:返回試圖的寬

eference:獲取被參考的單元格

a:從本工作簿獲取單元格。例如,獲取當前文件->值班表->d3 => 值班表!d3

b:從其他工作簿獲取單元格。例如,獲取1月份值班表->值班表->d3 =>[1月份值班表]值班表!d3

要求被引用的文件必須開啟,否則無法獲取引用。b中《1月份值班表》必須開啟,否則公式報錯。

rows:相對於被參考單元格的行偏移量 

a:當數字為正數時,表示相對於eference選擇的單元格下移。例如:1表示下移乙個單元格

b:當數字為負數時,表示相對於eference選擇的單元格上移。例如:-1表示上移乙個單元格

c:集合的表示形式,,表示eference選擇的單元格向下移動1、17、21、25個單元格,組成乙個檢視(虛擬表)。

cols:相對於被參考單元格的列偏移量 

a:當數字為正數時,表示相對於eference選擇的單元格右移。例如:1表示右移乙個單元格

b:當數字為負數時,表示相對於eference選擇的單元格左移。例如:-1表示左移乙個單元格

c:集合的表示形式,,表示eference選擇的單元格向右移動1、17、21、25個單元格,組成乙個檢視(虛擬表)。

如果不想讓選擇的單元格移動,使用再d3改成$d$3

綜合:

offset(值班表!$d$3,,0)

上述語句表示,被參考的單元格時當前工作簿,名稱為"值班表"的工作表,d3單元格為被參考的單元格。以d3為基礎向下移動4、20、24、28單元格。不左右移動。返回一列4行的檢視。

2、獲取offset中重複的值,從offset中獲取重複的值。使用countif函式。參考countif章節。

countif意為從指定的區域獲取重複值,一旦找到重複值,將返回重複值個數。

=sum(countif(offset(值班表!$d$3,,0),b20))*4.5

使用sum求出使用的從檢視中獲取到含有b20單元格的數量,單位是4.5,計算得到實際所需值。

=sum(countif(offset(值班表!$d$3,,0),b21))*8+sum(countif(offset(值班表!$d$3,,0),b21))*7

每次只需要合理設定偏移量,修改第一行的公式即可。這裡限制$d$3為固定值,b21為遞增的值。

numpy多維陣列獲取指定矩形區域

ndarray中,當我們想獲取其指定行列的子矩形局域時,該如何獲取?一般的,我們容易誤認為通過傳入相應索引的陣列來直接獲取,但是結果出乎我們預期,這時我們得到的卻是相應陣列構成的座標對應於ndarray中的元素構成的一維陣列。如下所示。上面例子中,我們想獲取arr物件中的右下角四個元素構成的矩形子區...

從網頁獲取資料

有的 會提供乙個爬蟲協議檔案robots.txt 例如豆瓣的爬蟲協議 2 如果網頁格式是json格式,要用可以用requests庫中內建的json解碼器來解碼 r.json 3 r.text可以自動推測文字編碼並進行解碼 4 通過encoding這個屬性去修改文字編碼,常用encoding utf ...

從資料庫中返回的資料結果中獲取指定資料

需求 我在資料庫中查詢的時候,為了少寫方法,就盡量共用方法,但是部分情況是返回了大量冗餘的資料,我需要一滴水,你卻給我了整片海。例如 表示由資料庫返回的可能記錄集的陣列 a array array id 5698 first name bill last name gates array id 47...