胡家菘,矩陣轉置transpose,名稱管理員name manager,資料驗證validation,間接定址indirect

陣列Matrix
~選擇性貼上Transpase 轉置
~從範圍建立名稱
~名稱管理員




劉任昌

加總人口	選擇國家	巴西	
329.064917	加總支出面	3089273.5	=TRANSPOSE(INDIRECT(I3))
1433.783686	加總生產面	3080048.5	
1366.417754	加總人口	211.049527	
126.860301	加總勞動人口	93.95682526	

INDIRECT 函數

Microsoft 365 Excel Mac 版 Microsoft 365 Excel Excel 網頁版 Excel 2021 其他...​​

本文將說明 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 活頁簿中的儲存格 A1。 若要讓公式顯示結果,請選取公式,按 F2,然後再按 Enter。 如有需要,您可以調整欄寬來查看所有資料。

資料

B2

1.333

B3

45

又倫

10

5

62

公式

描述

結果

'=INDIRECT(A2)

儲存格 A2 內的參照值。 參照的目標是儲存格 B2,其中包含值 1.333。

1.333

'=INDIRECT(A3)

儲存格 A3 內的參照值。 參照的目標是儲存格 B3,其中包含值 45。

45

'=INDIRECT(A4)

由於儲存格 B4 有定義的名稱 "又倫",該定義名稱的參照目標是儲存格 B4,其中包含值 10。

10

'=INDIRECT("B"&A5)

結合 "B" 與 A5 中的值,結果是 5。 這又參照到儲存格 B5,其中包含值 62。

62

TRANSPOSE 轉換

有時候您需要切換或旋轉儲存格。 您可以複製、複製 、複製及使用轉置選項來執行此工作。 但這麼做會建立重複的資料。 如果您不想輸入,您可以改為使用 TRANSPOSE 函數輸入公式。 例如,在下列圖片中,公式 =TRANSPOSE (A1:B4) 儲存格 A1 到 B4,然後水準排列。

上方為原始的儲存格,下方則是使用了 TRANSPOSE 函數的儲存格

附註: 如果您有最新版的 Microsoft 365, 您可以在輸出範圍的左上方儲存格中輸入公式,然後按 ENTER 確認公式為動態陣列公式。 否則,請先選取輸出範圍,在輸出範圍左上角的儲存格中輸入公式,然後按 Ctrl+Shift+Enter 以進行確認,以舊的陣列公式輸入公式。 Excel 會為您在公式的開頭和結尾處插入大括號。 如需有關陣列公式的詳細資訊,請參閱陣列公式的規則和範例

步驟 1:選取空白儲存格

首先,選取一些空白儲存格。 請務必選取與原始儲存格組合相同數量但方向不同的儲存格。 例如,以下是 8 個以垂直方向排列的儲存格:

A1:B4 中的儲存格

因此,我們需要選取 8 個水平儲存格,如下所示:

儲存格 A6:D7 已選取

這是新的轉置儲存格的結束位置。

步驟 2:輸入 =TRANSPOSE(

持續選取上述的空白儲存格,然後輸入:=TRANSPOSE(

Excel 會看起來會像這樣:

=TRANSPOSE(

請注意,即使我們開始輸入公式,系統仍會選取 8 個儲存格。

步驟 3:輸入原始的儲存格範圍。

現在,請輸入您要轉置的儲存格範圍。 在此範例中,我們要轉置儲存格 A1 到 B4。 因此本範例的公式會是:=TRANSPOSE(A1:B4) -- 但請先不要按 ENTER! 只要停止輸入並移至下一個步驟即可。

Excel 會看起來會像這樣:

=TRANSPOSE(A1:B4)

步驟 4:最後,按 CTRL+SHIFT+ENTER。

現在,按 CTRL+SHIFT+ENTER。 這是因為 TRANSPOSE 函數只能用於陣列公式,而這麼做才能完成陣列公式。 簡單來說,陣列公式就是會套用到多個儲存格的公式。 由於您在步驟 1 選取了多個儲存格 (您還記得吧? ),因此該公式會套用到多個儲存格。 以下是按 CTRL+SHIFT+ENTER 之後得到的結果:

儲存格 A1:B4 使用了公式的結果轉置到了儲存格 A6:D7 中

祕訣

  • 您不需要手動輸入範圍。 您可以在輸入 =TRANSPOSE( 之後使用滑鼠選取範圍。 只要按一下並從範圍的起始處拖曳到結尾處即可。 但請記得在完成後按 CTRL+SHIFT+ENTER,而不是單單按下 ENTER。

  • 需要同時轉置文字和儲存格格式嗎? 請嘗試 複製、複製及使用轉置選項。 但請記住,這樣會建立重複專案。 因此,如果原始儲存格變更,將不會更新複本。

  • 您還需了解一些關於陣列公式的事項。 建立陣列公式 ,或者您可以在這裡閱讀有關這些公式 的詳細指導方針和範例

技術詳細資料

TRANSPOSE 函數會將垂直的儲存格範圍以水平範圍的格式傳回,反之亦然。 TRANSPOSE 函數時必須以範圍陣列公式的方式輸入,該範圍的列數和欄數必須分別等於來源範圍的欄數和列數。 您可以使用 TRANSPOSE 來變換陣列或工作表上之範圍的垂直和水平方向。

語法

TRANSPOSE(array)

TRANSPOSE 函數的語法具有下列引數:

  • array    必要。 這是要轉置之工作表上的陣列或儲存格範圍。 陣列轉置是使用陣列的第一列做為新陣列的第一欄、陣列的第二列做為新陣列的第二欄來建立,以此類比。 如果您不確定如何輸入陣列公式,請參閱建立 陣列公式

留言

這個網誌中的熱門文章

胡家菘,HTML/CSS, Javascript, hyperlink超連結

胡家菘,最後利用Visual Studio Code編輯