- 締切済み
エクセルの並べ替え
エクセルの並べ替えについて質問です。 今、手元に最寄駅と住所のデータがあります。 A駅 住所A B駅 住所B C駅 住所C のように、エクセルの1つの列に2つの情報が入っています。 それを下のように、 A駅 住所A B駅 住所B C駅 住所C A列に最寄駅、B列には住所としたいのですが、 手作業で1つずつ住所をB列にカット&ペーストしていかないとできませんか? データが3000件ぐらいあるので、 簡単に並べ替える方法があれば教えていただきたいです。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- merlionXX
- ベストアンサー率48% (1930/4007)
並びに規則性があるならマクロで一発で行けますね。 たとえば、データがA列1行目からあって、お書きになった例のように、1行目が駅名、2行目が住所、3行目が空白行、と決まっているなら、B列に移動させるのは常に3行おきになるので Sub TEST() With ActiveSheet x = Cells(Rows.Count, "A").End(xlUp).Row '最終行取得 For i = 2 To x Step 3 'A列2行目から3行おきに .Cells(i, "A").Cut Destination:=Cells(i - 1, "B") 'B列の1行上に移動 Next i '繰り返し .Range("A1:A" & x).SpecialCells(xlCellTypeBlanks).EntireRow.Delete 'A列の空白行を削除 End With End Sub で、そうなります。 試すときは必ずオリジナルデータのコピーを取ってからにしてくださいね。
- mu2011
- ベストアンサー率38% (1910/4994)
一例です。 A列の奇数行に駅名、偶数行に住所とします。 (1)仮にB・C列のB1に=INDIRECT("a"&ROW(A1)*2-1)、C1に=INDIRECT("a"&ROW(A1)*2)として、B1:C1を選択して下方向にコピー (2)B・C列をコピー→形式を選択して貼り付け→値を選択→OK
- will_mania
- ベストアンサー率36% (177/482)
データ⇒フィルタ⇒オートフィルタを設定します。 で、そのあとの『駅』を含むでフィルタをかけたら駅の一覧が出ます。 それをコピペして別のシートに貼り付ける。 今度は逆に『駅』を含まないフィルタをかけたら住所一覧が出ます。 それをコピペして以下同様。 これで求めてる物が得られますかね?