ヘルプの森~Excel・Access・Office全般ヘルプデスクサイト

No.004

表の行項目と列項目(縦横)を入れ替えたい

2003/2007/2010/2013/2016/2019

表の縦横、行項目と列項目を入れ替えた表に作り替えたいというお問い合わせです。
表を90度回転させて反転したようなイメージです。

行列の入れ替えイメージ

万一手動でやろうには、位置の対応がややこしくて大変面倒なことになりますが、Excelには、まさしくそれができる便利な機能があります。
操作は入れ替え元の表をコピーして、指定して貼り付けます。

  1. 表を範囲選択しコピーします。
  2. 貼り付け先を選択します。
  3. [ホーム]タブ - [クリップボード]グループ - [貼り付け]▼ より [行/列の入れ替え] をクリックします。
    行/列の入れ替え

行列を入れ替えて貼り付けられた表は、書式や表示形式も数式もコピーされます。

ここで注意点があります。
コピー元のセルに相対参照のセル参照が設定されている場合に、移動し回転した位置にセル参照がずれるため、数式の答えがうまく出なくなるケースがあります。
これを回避するには、先にコピー元の表の数式を値にしておくといいでしょう。
数式を値にするには、元の表の範囲を選択してコピーし、同じ位置に、[貼り付け]▼より [値の貼り付け] の3つのボタンより貼り付けます。

そのほか、[形式を選択して貼り付け]ダイアログ ボックス を使用し、行列の入れ替え と 値の貼り付け を一緒に行う方法もあります。

表を範囲選択コピーし、コピー先のセルで右クリック、または [貼り付け]▼より [形式を選択して貼り付け] をクリックします。
[形式を選択して貼り付け]ダイアログ ボックスの [行/列の入れ替え]チェック ボックス をオンに、[値]オプションをオンにして [OK] をクリックします。

形式を選択して貼り付け

もちろん、[値]オプション をオフにして貼り付けると、[行/列の入れ替え] のコピーで数式もコピーされます。

Excel2003では、
[標準]ツールバーの[貼り付け]ボタンにある▼より[行列を入れ替える]コマンドが用意されていました。

twitter hatena line pocket

関連ヘルプ

数字文字列を数値に変換する(形式を選択して貼り付け編)
アウトライン機能がついてる集計行を折りたたんだ状態でコピーする
リンク貼り付けで書式もリンクしたい
2種類ある[形式を選択して貼り付け]ダイアログ ボックスについて
値の貼り付けの3つのボタンは、どのように貼り付くのか
セルに設定されている数式を抜いて値にするには(値の貼り付け)