本文將說明 Microsoft Excel 中 INDIRECT 函數 (函數:接受值、執行作業並傳回值之預先撰寫的公式。使用函數可以簡化並縮短工作表上的公式,特別是執行冗長或複雜計算的公式。)的公式語法及使用方式。
描述
傳回文字串所指定的參照位址。該參照位址會立刻進行計算並顯示其內容。INDIRECT 函數通常是您想在公式中改變參照位址卻不想改變公式本身時使用。
語法
INDIRECT(ref_text, [a1])
INDIRECT 函數語法具有下列引數 (引數:將資訊提供給動作、事件、方法、屬性、函數或程序的值。):
- Ref_text 必要。單一儲存格的參照位址,其中包含 A1 欄名列號表示法、R1C1 欄名列號表示法、定義為參照位址的名稱,或定義為字串的儲存格參照位址。如果 ref_text 不是一個有效的儲存格位址,則 INDIRECT 傳回 #REF! 錯誤值。
- 如果 ref_text 指向另一個活頁簿 (外部參照),則那個活頁簿必須已經是開啟的,否則 INDIRECT 傳回 #REF! 錯誤值。
附註 Excel Web App 不支援外部參照。
- 如果 ref_text 指向的儲存格範圍超出 1,048,576 的列限制或 16,384 (XFD) 的欄限制,INDIRECT 會傳回 #REF! 錯誤值。
附註 在 Microsoft Office Excel 2007 之前的舊版 Excel 中此行為方式不同,會略過超出的限制並傳回值。
- A1 選用。指定 ref_text 儲存格中所包含參照位址類型的邏輯值。
- 如果 a1 為 TRUE 或被省略了,則 ref_text 被解釋成 A1 參照表示方式。
- 如果 a1 為 FALSE,則 ref_text 就會解譯成 R1C1 欄名列號表示法。
範例
請將範例複製到空白的工作表,以便了解範例內容。
如何複製範例?
- 選取本篇文章中的範例。如果您複製 Excel Web App 中的範例,請一次複製及貼上一個儲存格。
重要事項 請勿選取列標題或欄標題。
從說明中選取範例
- 按 CTRL+C 鍵。
- 建立空白活頁簿或工作表。
- 在工作表中,選取儲存格 A1,然後按 CTRL + V 鍵。如果您使用 Excel Web App,重複複製及貼上範例中的每個儲存格。
重要事項 您必須將範例貼上到工作表的儲存格 A1,範例才能正常運作。
- 若要切換檢視結果和檢視傳回結果的公式,按 CTRL +` (重音符),或在 [公式] 索引標籤的 [公式稽核] 群組,按一下 [顯示公式] 按鈕。
當您將範例複製到空白工作表後,可以依照您的需求加以修改。
|
|
| A |
B |
| 資料 |
資料 |
| B2 |
1.333 |
| B3 |
45 |
| George |
10 |
| 5 |
62 |
| 公式 |
描述 (結果) |
| =INDIRECT($A$2) |
儲存格 A2 內的參照值 (1.333) |
| =INDIRECT($A$3) |
儲存格 A3 內的參照值 (45) |
| =INDIRECT($A$4) |
如果儲存格 B4 有定義的名稱 "George,",將傳回定義名稱的值 (10) |
| =INDIRECT("B"&$A$5) |
儲存格 A5 內的參照值 (62) |
|
當您建立的公式參照到某一儲存格,如果出現以下兩種情形會更新參照:(1) 如果您用 [剪下] 命令刪除此儲存格,或 (2) 因為增、刪列或欄因而移動此儲存格。因此,如果您公式中指的是某個固定的儲存格位址,而不管它上方各列如何增、刪、移動,則請用 INDIRECT 工作表函數。例如,如果一直都要參照儲存格 A10,請使用下列語法:
=INDIRECT("A10")