質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%

Q&A

3回答

1339閲覧

Excelについて

chiba000

総合スコア13

0グッド

0クリップ

投稿2016/06/28 02:34

編集2016/06/28 02:43

a 空白せる
空白せる 1
空白せる 2
b 空白せる
空白せる 2
空白せる 3
c 空白せる
空白せる 4

の表を

1 空白せる
空白せる a
2 空白せる
空白せる a
空白せる b
3 空白せる
空白せる b
4 空白せる
空白せる c

というふうに変換することはできるのでしょうか?
データ量が多く、vlookupは可能な限り使わない方法を探しています。

よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2016/06/28 03:32

abc群と123群のデータの関係性が今ひとつわかりづらいので補足お願いします。
chiba000

2016/06/28 04:09

ストラッツを用いたウェブアプリケーションで、サービス、リクエストの関係性をまとめる作業をしています。
ozwk

2016/06/28 04:21

変換ルールを説明してください。具体例だけでは補助にしかなりません。
ozwk

2016/06/28 04:35

(a,1),(a,2),(b,2),(b,3),(c,4)というデータを アルファベットでグループにしたものから 数字でグループにしたものに変換したいのですか
coco_bauer

2016/06/28 04:58

セル関数だけを使って実現したいのですか、それともVBA(マクロ)をつかって実現したいのですか? データの出現順序を保存する必要はありますか?
chiba000

2016/06/29 04:00

丸投げの質問ですいませんでした。 取り下げさせていただきます。
Zuishin

2016/06/29 04:46

取り下げるのではなく、丸投げにならないように質問を編集してベストアンサーが決まるまできちんと誠意を見せることが必要なことだと思います。
Zuishin

2016/06/29 04:48

努力するのは回答者ではありません。質問者です。
guest

回答3

0

VBA や PowerShell を使えば可能だと思いますが、何か条件はありますか?
変換さえできればいいのですか?

それともう一つ。
Excel の特性を考えれば、

1 a 2 a b 3 b 4 c

という形よりも

1 a 2 a b 3 b 4 c

という形の方が集計しやすくなり扱いやすいと思うのですが、そうしないのはなぜですか?

さらにもう一つ。
最終的なデータが、機械的に処理せずただ見るためだけのものであれば、Excel でなく html に変換した方が見やすくなると思うのですが、Excel でなければならない理由がありますか?

投稿2016/06/28 04:05

編集2016/06/29 04:13
Zuishin

総合スコア28660

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

やりたいことは、
(a, 1)
(a, 2)
(b, 2)
(b, 3)
(c, 4)
のデータがabc基準でグルーピングされているものがあり、これを数値基準でグルーピングしたものに変更したいということでよいでしょうか?

そうであれば、処理前後で2やbの出現回数が変わっていることからもわかるとおり、単純な並べ替えではすみません。
データを整理し、再集計する必要があると思います。


手順①:データ整理

a 1 2 b 2 3 c 4

この状態で、先頭がA1セルとします。

C2セルに=IF(B2="","",IF(B1="",A1,C1))と記述し、同じ式をC列のデータ範囲に適用します。

これで、

a 1 a 2 a b 2 b 3 b c 4 c

という形になります。

このB列とC列を別シートなどに貼り付け、B列の内容でソートすればデータ整理は完了です。
完成データは

1 a 2 a 2 b 3 b 4 c

です。


手順②:再集計

ここの見た目が問題です。

見出し項目(数値部)とそれにぶら下がる子項目(abc部)の関係がわかればよいのであれば簡単です。

例えば見出し項目(数値部)に条件付き書式をつけて、一つ上のセルと同じ内容なら白文字にする(セル背景色と同じにすることで表面上見えなくする)だけでもよいかもしれません。

Excel関数を使うなら、完成データの左上がA2セルだとして、C2セルに=IF(A2=A1,"",A2)、D2セルに=B2、のような式を設定することで

1 a 2 a b 3 b 4 c

のような形にまでは加工することができます。

質問文にあるような、見出しが変わるごとに見出しのみの1行を作るようなレイアウトをご希望でしたら、VBAでのコーディングが必要になるのではないかと思います。

投稿2016/06/28 07:43

編集2016/06/28 07:45
jawa

総合スコア3013

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

a
1
2
b
2
3
c
4

というデータを

1
a
2
a
b
3
b
4
c
というデータにするという認識でよろしいですか?

投稿2016/06/28 02:41

tomo.ina

総合スコア357

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

chiba000

2016/06/28 02:44

スペースが反映されていないので、再編集させていただきました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問