こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

エクセルでの縦横の入れ替えについて

エクセルでの操作に困っています。
添付画像のように縦横の入れ替え(とはちょっと違う気がするのですが)をしたいのですが、なにか効率的な方法はありますでしょうか?
バージョンは2016です。

うまく言葉にできず申し訳ありません。
エクセルにお詳しい方、どうぞよろしくお願いいたします。

投稿日時 - 2018-01-09 16:14:05

QNo.9416645

困ってます

質問者が選んだベストアンサー

ANo.2です。
図が小さくて見えずらいので意図を勘違いしていました。
できれば、図は見やすいものにして文章でも説明が欲しかったところです。

1行目に入っているのは本当は数値では無く文字列なんですね?
であればA列に空列を挿入し、A1にはスペースを入れ、A2セルに↓の式を入れてA2セルを下方向にコピーで如何でしょうか
=OFFSET(A$1,0,SUMPRODUCT((B2:E2<>"")*(COLUMN(B2:E2)-1))

1行目はあとで非表示にでもしてください。

投稿日時 - 2018-01-10 10:54:01

お礼

ご回答ありがとうございます!

A2に
=OFFSET(A$1,0,SUMPRODUCT((B2:E2<>"")*(COLUMN(B2:E2)-1)))
を入力することで、無事思った通りの結果を得ることができました。

これは実際には物語のセリフだけを抽出したデータでした。
(どのような意味の元データをどのように…という点はokvaio様への補足にある通りです)
ただ質問の際は「実際のデータがなにであるか」は不要且つわかりづらさを煽るのでは…と考えて安易に文字を数字に置き換えてしまいました。

ただ実際にはこれが余計な考えでした……。
エクセルに疎いあまり数字と文字で回答が変わることにも気づきませんでした。
混乱を招いてしまいました回答者の皆様にはお詫びと共に感謝申し上げます。

次回からはmt2015様にご指摘いただいた点、留意して質問したいと思います。

素早いご回答をいただいたNouble様始め
msMike様、okvaio様、bunjii様に感謝申し上げます。

この度は誠にありがとうございました。

投稿日時 - 2018-01-10 11:11:26

ANo.10

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(10)

ANo.9

>なにか効率的な方法はありますでしょうか?
元の状態と変更後の状態を良く観察して規則性を読み取ることが重要です。
元の配置で1行目の数値は列記号(A、B、C、D)を列番号(1、2、3、4)に置き換えたものと推測できます。
また、A2:D6の文字列の配置の相対位置を変えずにB2:E6へシフトさせてA列を空けないと1行目の数値を配置する場所がありません。
これらのことからA1:A6にブランクセルを挿入することでA2:D6をB2:E6へ文字列群をシフトできます。
A2セルへ次の数式を入力して下へA6までコピーすると目的の結果を得られるはずです。
=SUMPRODUCT((B2:E2<>"")*(COLUMN(B2:E2)-1))
1行目の数値は数式と関係ありませんので値を消去しても、行全体を削除しても影響ありません。
A列の数式を計算結果の値に置き換えるにはA2:A6を選択してコピーし、同じ位置へ値のみ貼り付ければ良いでしょう。

投稿日時 - 2018-01-10 08:12:44

ANo.8

[No.5補足]へのコメント、
》 Sheet1のA1~D1にキャラ名、A2~D6に抽出した
》 セリフを入れて試してみました。
「キャラ名」って何のことですか?
「Sheet1のA1~D1」は 1~4 の数値だったのでは?
A列には

4
#VALUE!
#VALUE!
4
#VALUE!

が並んでしまった、と仰るならワカランデモナイけど、全て「0」だったとはサッパリポンです。
無駄な「試行錯誤」は諦めませう。

投稿日時 - 2018-01-10 01:01:21

ANo.7

あぁ、
少し、逃してました。

B2セル、入力後
同セルに、対し、
セルの書式設定→ユーザー書式に
0;-0;"";@
と、入力、
此を
横に、フィル。

行2を、下に
フィル。

此で、
お望みの、ものと
何か、違いが
出るが、

お教え、願えないで
しょうか?


因みに、蛇足ながら

此の
書式設定に、よる
対処は、

msMike様で、発生した
と、いう
問題にも、

有効だ
と、思います。

投稿日時 - 2018-01-10 00:33:57

ANo.6

補足、有難うございます。

出来なかった… との事、
申し訳ない。

ただ、
何が、駄目だったのか、

私か、手順内で
指定した、

例えば、修正作業
等、

全行程を
して、頂けたのかも
含め、

問題点が、残念ながら
伝わって、来ないのです。


其の後の、ご発言も
拝見しました。


しかし、私には
時系列順を、示す
番号が、
(以下 時系列番号と、称す)
付加されている
以外、

違いが、分かりませんでした。


別シートでの、再現で
良いなら、

別シートの
A2に
=ROW(A1)、
B2に
=A2、
と、記入、

B2を、必要分
横に、フィル、

行2を、下に
フィル。

で、
行けそうに、見える…
の、ですよ?


と、言う事で、

時系列番号以外
何が、違うのか、

お手数ですが、
お示し、頂けないで
しょうか?

投稿日時 - 2018-01-10 00:25:17

ANo.5

試行錯誤したら出来ちゃった、てな感じです。(*^_^*)
ホントにOKなのだらうか?貴方も試して結果を教えてぇ~

Sheet2 において、
1.セル A2 に次式を入力
 ̄ ̄ =MAX(IF(Sheet1!$A$2:$D$6=LOOKUP("黑",Sheet1!A2:D2),Sheet1!$A$1:$D$1,""))
 ̄ ̄【お断り】上式は必ず配列数式として入力のこと
2.式 =OFFSET(Sheet1!$A$1,ROW(A1),COLUMN(A1)-1)&"" を入力し
 ̄ ̄たセル B2 を右3列にオートフィル
3.範囲 A2:E2 を下方に4列オートフィル

投稿日時 - 2018-01-09 20:59:51

補足

ご回答ありがとうございます!
試行錯誤までしていただいて、恐縮です……。
なんだか複雑な数式が出てきてびっくりしてしまいました。
やはりこういうものが必要な作業だったのですね。

Sheet1のA1~D1にキャラ名、A2~D6に抽出したセリフを入れて試してみました。

結果、Sheet2のB2~E6にセリフは出てくるのですが、キャラ名が出てほしいA列には全て「0」が並んでしまいました……。

ただなんだか一番できそうな気がするので、もう少し試行錯誤してみようかと思います。
ご回答いただきありがとうございました。

投稿日時 - 2018-01-10 00:03:47

ANo.4

質問の一部か欠けていると思います。
たぶん、
1には、「ああ」と「うう」
2には、「いい」
3には、「ええ」
4には、「おお」
と言うことでしょうか?

それでも、「こう」のA列の数字の並び順が、1,2,3,1,4と
順不同です。
もう少し具体的に、こういったデータをこういう風に活用したい。
とか、書けませんか。そうすれば、答えやすいかと思います。

投稿日時 - 2018-01-09 17:42:25

補足

ご回答ありがとうございます。

たぶん、
1には、「ああ」と「うう」
2には、「いい」
3には、「ええ」
4には、「おお」
と言うことでしょうか?≫
その通りです。

もう少し具体的に、こういったデータをこういう風に活用したい。
とか、書けませんか≫
そうですね…すみません。

実際の活用方としては、物語のセリフだけを抽出したデータになります。
その時の規格が

ーーーーーーーーーーーーーーーー
  A    B   C
1太郎  花子 ジョン
2そうだね
3    でもそれってさー
4わかるよ
5       うんうん
ーーーーーーーーーーーーーーーー


という風になっています。
・A列が太郎のセリフ、B列が花子のセリフ、C列がジョンのセリフとなります。
・上から下に時系列が流れていきます。

上記で、実際の流れ・どれが誰のセリフなのかとしては

太郎「そうだね」
花子「でもそれってさー」
太郎「わかるよ」
ジョン「うんうん」

という風になります。
丁度表で見るとジグザグに読む感じですね。

そしてこの元データを

ーーーーーーーーーーーーーーーー  
   A   B       C
1太郎そうだね
2花子    でもそれってさー
3太郎わかるよ
4ジョン           うんうん
ーーーーーーーーーーーーーーーー

という感じにしたいのです。
A列には変わらず太郎のセリフが入り、B列には花子、C列にはジョンのセリフが入ります。

・ただ1行目に入っていた各キャラ名を列に持ってくる
・各セリフにキャラ名が紐づく

というような形にしたいのです。
説明がわかりづらく申し訳ありません。

手作業でもできないこともないのですが、実際にはもっと数が多いため、なにか便利な機能や関数的な何かがあればと思ったのですが……。
やはりエクセルでは難しい作業になるのでしょうか……。

投稿日時 - 2018-01-09 19:48:59

ANo.3

訂正
5.1:2行を削除

5.1行目を削除

投稿日時 - 2018-01-09 16:36:02

補足

ご回答ありがとうございます!
やってみたのですが、

1ああ
2  いい
3    ええ
4うう    
       おお

というようになってしまいました……。
やはり難しいのでしょうか……。

投稿日時 - 2018-01-09 17:15:47

ANo.2

こういう手順の話ですか?

1.A列に空列挿入
2.2行目に空行挿入
3.1行目を全コピー
4.A2セルに行列を入れ替えて貼り付け
5.1:2行を削除

投稿日時 - 2018-01-09 16:34:43

ANo.1

入れ替えたい、範囲を
コピー
作業用、別シートを
用意する。

編集内の
「詳細を指定してペースト」を、選択、
「縦横を入れ替える」の、項に
チェックを、入れ、
其のまま、
作業用シートに、ペースト。

相違点を、編集して
修正。

完成したら、範囲選択し
コピーして
本来
反映させたい、先へ
ペースト。

最後に、
作業用に、作った
シートを、破棄。

終了。


如何で、しょうか?

投稿日時 - 2018-01-09 16:30:11

補足

素早いご回答ありがとうございます!
やってみたのですが、

1ああ
2  いい
3    ええ
4うう    
       おお

mt2015様同様、上記のようになってしまいました。
単純な入れ替えではできないものなのでしょうか……。

ご回答ありがとうございました。

投稿日時 - 2018-01-09 17:19:31