![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?a65a0e2)
エクセルでのデータの並べ替えについて質問です。
以下のようにA、B列に縦に並んでいるデータを、A列の値が同じもの同士で区切って横に並べていくというのをマクロでできないかと試しているのですがなかなかうまくいきません。
どなたかお知恵を貸していただけないでしょうか。よろしくお願いします。
A列 B列
a 100
a 150
a 200
b 180
b 110
c 120
c 160
↓
A列 B列 C列 D列 E列 F列
a 100 b 180 c 120
a 150 b 110 c 160
a 200
No.2ベストアンサー
- 回答日時:
これで、できたっぽい。
Sub sample()
Dim i As Long, j As Long
i = 1
j = 1
Do While Cells(i + 1, j) <> ""
If Cells(i, j) <> Cells(i + 1, j) Then
Range(Cells(i + 1, j), Cells(Cells(Rows.Count, j).End(xlUp).Row, j + 1)).Cut Cells(1, j + 2)
i = 0: j = j + 2
End If
i = i + 1
Loop
End Sub
No.3
- 回答日時:
元のデータのシート名をSheet1、
並べ替えた結果のシート名をSheet2とします。
以下のマクロを標準モジュールに登録して下さい。
Public Sub 並べ替え()
Dim sh1 As Worksheet
Dim sh2 As Worksheet
Dim maxrow As Long
Dim wrow As Long
Dim row2 As Long
Dim col2 As Long: col2 = -1
Dim key As String
Set sh1 = Worksheets("Sheet1")
Set sh2 = Worksheets("Sheet2")
sh2.Cells.ClearContents
maxrow = sh1.Cells(Rows.Count, "A").End(xlUp).Row
key = ""
prev_key = ""
For wrow = 1 To maxrow
key = sh1.Cells(wrow, "A").Value
If key <> prev_key Then
row2 = 1
col2 = col2 + 2
End If
sh2.Cells(row2, col2).Resize(, 2).Value = sh1.Cells(wrow, "A").Resize(, 2).Value
row2 = row2 + 1
prev_key = key
Next
MsgBox ("完了")
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Excelで横書き50行の漢字テストデータを縦書きのテスト問題にしたい。 6 2022/04/27 15:03
- Excel(エクセル) Googleスプレッドシートの割合の関数と円グラフの並べ替えについて 1 2022/07/22 17:31
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
- その他(Microsoft Office) エクセルで串刺ししたシートの並べ替えをしたいです 4 2023/02/14 11:59
- Excel(エクセル) Excel 郵便番号順に並び変えたい 同じ番号が複数あるとき 4 2022/04/28 18:35
- その他(Microsoft Office) エクセルソートと抽出について 3 2022/10/22 22:09
- Visual Basic(VBA) VBA横データを縦にしたいです 2 2023/08/08 19:38
- Excel(エクセル) Excel2007での条件付き書式について 6 2023/05/02 10:56
- Excel(エクセル) 結合セルのソートについて 5 2022/04/22 11:57
- Visual Basic(VBA) 指定月分の顧客データファイルを統合して並べ替え、所定の場所に貼り付ける 3 2022/09/10 07:55
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・「これはヤバかったな」という遅刻エピソード
- ・初めて自分の家と他人の家が違う、と意識した時
- ・いちばん失敗した人決定戦
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで二つの数字の小さい...
-
PowerPointで表の1つの列だけ...
-
Excelで半角の文字を含むセルを...
-
エクセル 文字数 多い順 並...
-
2つのエクセルのデータを同じよ...
-
エクセル(勝手に太字になる)
-
Excel、市から登録している住所...
-
EXCELで 一桁の数値を二桁に
-
エクセルで最初のスペースまで...
-
文字列に数字を含むセルを調べたい
-
エクセルで文字が混じった数字...
-
エクセルの項目軸を左寄せにしたい
-
エクセルの関数(日数の平均の...
-
エクセルの表から正の数、負の...
-
「B列が日曜の場合」C列に/...
-
VBAで文字列を数値に変換したい
-
エクセル 同じ値を探して隣の...
-
オートフィルターをかけ、#N/A...
-
エクセルの並び変えで、空白セ...
-
エクセルの列を範囲選択しての...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで二つの数字の小さい...
-
PowerPointで表の1つの列だけ...
-
Excelで半角の文字を含むセルを...
-
2つのエクセルのデータを同じよ...
-
エクセル 文字数 多い順 並...
-
EXCELで 一桁の数値を二桁に
-
エクセルの項目軸を左寄せにしたい
-
エクセルの表から正の数、負の...
-
エクセル(勝手に太字になる)
-
エクセルで最初のスペースまで...
-
エクセルで文字が混じった数字...
-
文字列に数字を含むセルを調べたい
-
「B列が日曜の場合」C列に/...
-
VBAで文字列を数値に変換したい
-
オートフィルターをかけ、#N/A...
-
エクセル 同じ値を探して隣の...
-
Excel、市から登録している住所...
-
エクセルで、列の空欄に隣の列...
-
【VBA】特定列に文字が入ってい...
-
エクセルの関数(日数の平均の...
おすすめ情報
ありがとうございます。
バラバラにはなっておらず、必ずひとかたまりになっています。