作者JieJuen (David)
看板Office
標題Re: [算表] 多格、自動前一格之範圍參照
時間Mon Mar 23 19:05:25 2009
OFFSET有寬度這個欄位
=sum(indirect("A1:A"&row()-1)) 等於
=SUM(OFFSET($A$1,,,ROW()-1))
這裡"前一格"是指上一列,至於上一欄
=SUM(OFFSET($A$1,,,,COLUMN()-1))
不太清楚原文"下次"是什麼意思
推文顯示 下次並不是拖曳到下一格的意思XD
也許是插入了幾格最新資料後重新加總
可以用定義的方式
在 G1 定義
left =F1
則G1公式
=SUM(B1:left) 意思是 =sum(B1:F1)
H1公式
=SUM(B1:left) 意思是 =sum(B1:G1)
OFFSET則
=SUM(OFFSET($B$1,,,,COLUMN()-COLUMN($B$1)))
和INDIRECT功能大同小異 不同情況式子長短不定
例如
=SUM(B3:INDIRECT("RC[-1]",))
不過我不確定何者計算較快
似乎情況是
OFFSET計算快,但為易失性函數,每次工作表變化會重算
INDIRECT慢,但較不需重算 (不確定 有需要自行實驗吧 XD)
INDEX法
=SUM(B3:INDEX($1:$65536,ROW(),COLUMN()-1))
這不管直的橫的 寫法都長差不多
※ 引述《ljuber (給你吃膨餅)》之銘言:
: 標題: [算表] 一個小問題 自動
: 時間: Mon Mar 23 09:26:32 2009
:
:
:
: 軟體:excel
: 版本:任何版本
:
:
: 如果我有一個加總
: 例如在G3格 =sum(B3:F3)
:
: 但是我要每次都加一欄
: 也就是下次加總變成H3 =sum(B3:G3)
:
: 之前在列的寫法 例如=sum(A1:A4)
:
: 我會寫成=sum(indirect("A1:A"&row()-1))
:
: 但是屬於欄的(橫的)我就不知道怎麼寫XD
:
:
:
: --
: ※ 發信站: 批踢踢實業坊(ptt.cc)
: ◆ From: 210.65.186.253
: 推 windknife18:第一種 G3=sum($B$3:F$3) 然後拖拉到 H3 即可 03/23 13:20
: → ljuber:這方法用過 但還要拖拉XD 03/23 15:07
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.47.34.32
※ 編輯: JieJuen 來自: 114.47.34.32 (03/23 19:14)
推 ljuber:感謝 可以學到一些觀念 03/23 19:15
→ JieJuen:^^ 方法多,不好整理 好像也沒整理過 03/23 19:16
推 ljuber:offset的說明(ref,rows,cols,[height],[width]) 03/23 19:30
→ ljuber:真沒想到他可以這樣用.... 03/23 19:30
推 windknife18:J大真是太猛了.... 03/23 21:53