本指南說明如何在 Excel 中將行轉換為列。 使用 Excel 時,您經常需要交換錶格中的行和列。 例如,碰巧有人做了一張巨大的桌子,然後他意識到,如果你把它翻過來,閱讀起來會容易得多。
Эта детальная инструкция расскажет о нескольких способах транспонирования Excel-таблицы, а также о часто встречаемых ошибках, с которыми может столкнуться пользователь. Все они могут использоваться на любой версии Excel, как очень старой, так и самой новой。
使用選擇性粘貼功能
假設您有兩個數據集。 第二個是你想要的結果。 第一個是需要轉置的表。 在第一個版本中,國家的名稱分列在不同的列中,閱讀起來很不方便,更不用說比較國家的特點了。 因此,最好組織表格,使國家名稱出現在不同的列中。
要交換行和列,請執行以下操作:
- 選擇原始表。 如果您想一次查看整個表格(如果它非常大),則需要按組合鍵 Ctrl + Home,然後按 - Ctrl + Shift + End。
- 然後復制單元格。 這可以通過上下文菜單或按 Ctrl+C 組合鍵來完成。 建議您立即習慣最後一個選項,因為如果您學習熱鍵,您可以在一秒鐘內執行許多任務。
- 選擇目標區域中的第一個單元格。 При этом он должен находиться за пределами таблицы。 Также необходимо подобрать ячейку таким образом, чтобы таблица после транспонирования не пересекалась с другими данными。 例如,如果初始表格有 4 列和 10 行,那麼在執行完所有這些操作後,它將向下展開 10 個單元格,向一側展開 4 個單元格。 因此,在這個範圍內(從目標單元格算起)應該什麼都沒有。
- 在目標單元格上,您必須右鍵單擊並選擇“選擇性粘貼”,然後選中“轉置”字樣旁邊的框。
重要事項: 如果源表中有公式,請務必確保在每個單元格中使用絕對引用。 必須這樣做,以便自動更新所有鏈接。
Огромное преимущество опции «Специальная вставка» и заключается в возможности транспонировать таблимуцу всендо лишь за не И при этом полностью сохраняется форматирование, что также позволяет сэкономить кучу времени。
Несмотря на эти явные плюсы, есть и ряд серьезных недостатков, которые мешают этому методу называтьсьных намлыватьсьнуя:
- 將它用於轉置未簡化為平庸值範圍的成熟表是不好的。 在這種情況下,“移調”功能將被禁用。 要變通解決此問題,您必須將表轉換為範圍。
- 此方法非常適合一次性轉置,因為它不會將新表與原始數據相關聯。 簡而言之,當您更改其中一張表時,第二張表的信息不會自動更新。 因此,必須重複轉置。
如何交換行和列並將它們鏈接到主表?
那麼,怎樣才能讓“選擇性粘貼”選項將表格與主要數據和轉置產生的數據聯繫起來呢? 畢竟,每個人都希望數據能夠自動更新。
- Скопировать таблицу, для которой требуется транспонирование。
- 在表格的空白區域中選擇一個沒有數據的單元格。
- 啟動“選擇性粘貼”菜單,類似於前面的示例。 之後,您需要單擊左下角的“插入鏈接”按鈕。
- 結果如下。
- Выбрать новую таблицу и запустить окно «Найти и заменить» мутеа пиаиаиаtaибнить» мутеа пеиати
- Заменить все знаки ввода формулы (=) на ххх (или любую другую комбинацию знаков, которой нет оригинальной таблице)。
- 結果,會出現一些可怕的事情,但這是實現預期結果的強制性中間條件。 那麼一切都會看起來很美。
- 複製生成的表格,然後使用選擇性粘貼來轉置它。
之後,您只需重新打開“查找和替換”對話框,並使用它將單元格中的“xxx”更改為“=”,以便所有單元格與原始信息相關聯。當然,這更複雜且更長,但是這種方法可以讓您繞過缺少原始表的鏈接。 但是這種方法也有一個缺點。 它表示需要獨立恢復格式化。
公式的應用
有兩個功能可以讓您靈活地更改行和列: ТРАНСП и ДВССЫЛ。 Здесь также есть возможность сохранить связь с первоначальной таблицей, но механика работы несколько иная。
函數 TRANSP
實際上,這個公式直接轉置了電子表格。 語法如下:
=TRANSP(數組)
現在我們將嘗試將其應用於包含有關各個州人口信息的表格。
- 計算表格中的列數和行數,並在工作表中找到具有相同尺寸的空白區域。
- 按 F2 鍵啟動編輯模式。
- 寫一個函數 交通運輸部 括號中的數據范圍。 使用此函數時始終使用絕對引用很重要。
- 按組合鍵 Ctrl+Shift+Enter。 準確按下組合鍵很重要,否則公式將無法正常工作。
就是這樣,現在結果看起來像這樣!
這個公式的優點和之前的方法一樣(使用“查找和替換”功能),就是當底層信息發生變化時,轉置表會自動更新。
Но недостатки у нее тоже имеются:
- 與查找和替換方法一樣,格式將不會被保存。
- 原始表格必須包含一些數據,否則某些單元格中會出現零。
- Излишняязависимость от источника данных。 То есть, этот метод имеет противоположный по недостаток – невозможность изменять транспонированную таблицу。 Если попытаться это сделать, программа скажет, что невозможно редактировать часть массива。
另外,這個功能並不總是可以靈活地應用在不同的情況下,所以你需要了解它,但要使用更有效的技術。
使用間接公式
這種方法的機制與使用公式非常相似 交通運輸部,,臟¼。
Но одной формулы 間接 還不夠:你還需要使用該功能 地址. 本例中不會有大表,以免大量不必要的信息使您超載。
所以,假設你有一個這樣的表,由 4 列和 5 行組成。
需要採取以下措施:
- 輸入以下公式: =間接(地址(列(A1),行(A1))) 進入新表格的左上角單元格(在我們的示例中為 A7),然後按 Enter 鍵。 如果信息不是從第一行或第一列開始,那麼您將不得不使用更複雜的公式: =ДВССЫЛ(АДРЕС(СТОЛБЕЦ(A1)-СТОЛБЕЦ($A$1)+СТРОКА($A$1);СТРОКА(A1)-СТРОКА($A$1)+СТОЛБЕЦ($A$1))). 在這個公式中,A1 表示表格的頂部單元格,在此基礎上將形成轉置單元格。
- 將公式擴展到將放置新版本表格的整個區域。 為此,請將第一個單元格右下角的標記拖到未來表格的另一端。
- 全部! 表格結果已成功轉置,您仍然可以對其進行編輯。 當然,她的外表還有很多不足之處,但修復它並不難。 要恢復正確的格式,您需要復制我們轉置的表(即原始表),然後選擇新創建的表。 接下來,右鍵單擊所選範圍,然後單擊粘貼選項中的“格式”。
所以使用函數 間接 允許您絕對編輯最終表中的任何值,並且一旦在源表中進行任何更改,數據將始終更新。
當然,這個方法難度更大,但如果你在實踐中搞定,那麼一切都不是那麼可怕。
ээ氨都是ээ電ых氨基
INDIRECT 和 ADDRESS 公式的組合如何工作?
После того, как вы разобрались в том, как использовать совокупность этих формул для транспонирования та блицы, вам, возможно, захочется более глубоко изучить принцип работы этого метода。
功能 間接 在我們的公式中用於創建間接單元格引用。 例如,如果您需要在單元格 A8 中指定與 B1 中相同的值,則可以編寫公式
=間接(“B1”)
Казалось бы, зачем это делать? Ведь можно просто написать ссылку на ячейку в другой ячейке。 Но преимущество этой функции в том, что в ссылку можно превратить абсолютно любую строку, и даже ту, которая создается с использованием других формул. Собственно, это мы и делаем в формуле。
超越功能 地址 也用在公式中 COLUMN и LINE. 第一個根據已知的行號和列號返回單元格的地址。 在這裡遵循正確的順序很重要。 首先指定行,然後只指定列。 例如,函數 地址(4;2) 將返回地址 $B$2。
Следующая используемая выше функция – это COLUMN. 此處有必要使公式從特定參考中接收列號。 例如,如果您在此函數的括號中使用 B2 參數,那麼它將返回數字 2,因為第二列是 B 列。
顯然,ROW 函數的工作方式相同,它只是返回行號。
現在我們將不使用抽象的例子,而是使用上面使用的一個非常具體的公式:
=間接(地址(列(A1),行(A1)))
在這裡你可以在函數中看到第一個 地址 指定了列,然後才指定行。 而這個配方的工作能力的秘密就隱藏在這裡。 我們記得這個函數以鏡像方式工作,其中的第一個參數是行號。 事實證明,當我們在那裡寫入列的地址時,它會變成行號,反之亦然。
То есть, если подытожить:
- 我們使用相應的函數獲取列號和行號。
- 使用功能 地址 行變成列,反之亦然。
- 功能 間接 有助於在單元格中顯示鏡像數據。
事情就是這麼簡單!
使用宏轉置
宏是一個小程序。 它可用於自動化該過程。 重要的是要考慮宏有一些限制。 最大轉置方法允許您使用 65536 個元素。 如果超過此限制,將導致數據丟失。
Во всем остальном, это эффективный метод автоматизации, который сможет значительно облегчить жизнь。
Например, можно написать такой код, который будет менять местами строки и колонки。
子轉置列行()
將 SourceRange 調暗為範圍
將 DestRange 調暗為範圍
Set SourceRange = Application.InputBox(Prompt:=»請選擇要轉置的範圍», Title:=»Transpose Rows to Columns», Type:=8)
Set DestRange = Application.InputBox(Prompt:=»選擇目標區域的左上角單元格», Title:=»Transpose Rows to Columns», Type:=8)
源範圍.複製
目標範圍選擇
Selection.PasteSpecial 粘貼:=xlPasteAll,操作:=xlNone,SkipBlanks:=False,轉置:=True
Application.CutCopyMode = False
END SUB
Но если знаний в программировании особо нет, ничего страшного。 Можно воспользоваться описанными выше способами。 Апотом учиться новому по мере освоения старого。