Excel で列を行に簡単に変更するにはどうすればよいですか?

Excel で列を行に簡単に変更するにはどうすればよいですか?

巨大な Excel テーブルを Word レポートの段落に変換する必要があるのですが、効率的な方法が見つかりません。

ソースは次のようになります。 元の表形式

そして、最終的には、ピボット テーブルなどを使用して、次のようなものが必要になります。説明値のない「アイテム C」はスキップされることに注意してください。

ターゲットフォーマット

さて、そこに到達するには、ソースを 1 行に 1 つの説明があるこの中間形式に変換する必要があると思います。

中間テーブル形式

ソースから中間形式に効率的に変換するにはどうすればよいでしょうか? あるいは、私が知らない、ターゲット形式を生成するより簡単な方法があるのでしょうか? どのような助言でも歓迎します!

答え1

列の数がそれほど多くない場合は、シンプルですが、おそらくかなり効果的な方法です。

  1. 2つのヘッダーを持つ新しい空のシートを作成します。アイテムそして説明
  2. 各説明列について
    1. 元のシートからすべてを新しい一時シートにコピーします
    2. 1つを除くすべての説明列を削除します(シートには2つの列のみが含まれます)。アイテムそして説明 X
    3. 残りの説明列を並べ替え/フィルタリングして、空のセルがないようにする
    4. 残りの行をすべて最初のステップで作成したシートにコピー/貼り付けます。

答え2

この機能は Excel に組み込まれています。

ピボットしたいセルをハイライトし、コピーして、「転置貼り付け」機能を使用して別の場所に貼り付けるだけです。これを行うには、リボンの貼り付けボタンの下にある下矢印をクリックし、ペースト見出しの下に、列が行に回転するボタンがあります。それをクリックして「転置貼り付け」を行うと、貼り付けたバージョンで行が列になり、その逆も起こります。

このビデオでは、このプロセスと、その他の関連するいくつかのトリックを説明します。 http://www.youtube.com/watch?v=KbfeIYV359I

答え3

Spreadsheet::ParesExcelスクリプト(例えばPerlなど)を使用する準備ができている場合は、このStackoverflowの例カスタマイズされたソリューションを形成します。

PowerShell スクリプトの例と、その他の回答にはいくつかのヒントも記載されています。

関連情報