こんにちは。宜しくお願い致します。
A B C
1 静岡 埼玉
2 福島 東京 愛媛
3 青森
4 長崎 徳島 愛媛
5 東京 千葉
6 秋田 兵庫 大阪
.
.
.
例えばこういう形で好きな都道府県の上位3つの解答がそれぞれあったとします。(1個の人もいるし、2個の人もいます)
これを別のシート(同じシートの違う場所でも構いません)に縦並び1本で出したいときどうしたらいいでしょうか。
★こういう風にしたい★
静岡
福島
青森
長崎
東京
秋田
埼玉
東京
愛媛
徳島
愛媛
千葉
兵庫
大阪
.
.
※好きな県などが人によって重複していても構いません、また順不同でもいいです。(縦並びのデータに東京が20個あってもよいということ)
形式を選択して貼り付けで行列を入れ替えるではうまくいかないです。
宜しくお願い致します。
No.5ベストアンサー
- 回答日時:
VBAで、もっと簡単に。
下記をVBEの標準モジュールにコピーし貼りつけ。
元データのあるシートで、データのある範囲を範囲指定して(空白セルが範囲内にあっても結構)、下記を実行。
Sub ichiretu()
Dim cl As Range
p = 1
For Each cl In Selection
If cl <> "" Then
Worksheets("sheet3").Cells(p, "A") = cl
p = p + 1
End If
Next
End Sub
Sheet3のA列に並びます。
おはようございます
VBAの基本的なものも全く触ったことがなかったのですが、コピペで簡単に出来ました!
今回は、こちらを採用させて頂き、今後使っていこうと思っております。
ありがとうございました!
No.4
- 回答日時:
こんにちは。
maruru01です。どこでもいいので、
=IF(COUNTIF($A$1:$C$6,"*")>=ROW(A1),INDEX($A$1:$C$6,ROUND(MOD(SMALL(IF(LEN($A$1:$C$6),COLUMN($A$1:$C$6)+ROW($A$1:$C$6)/1000),ROW(A1)),1)*1000,),INT(SMALL(IF(LEN($A$1:$C$6),COLUMN($A$1:$C$6)+ROW($A$1:$C$6)/1000),ROW(A1)))),"")
と入力して、[Ctrl]+[Shift]+[Enter]で確定します。
(数式の両端に「{}」が付いて、配列数式になります。)
そうしたら、これを下の行へ適当にコピーします。
なお、データ範囲は適宜変更して下さい。
数式を別のシートに入力する場合は、当然データ範囲にシート名を付けて下さい。
No.3
- 回答日時:
その作業が一時的なものであれば、手作業でもそれ程手間がかかりませんし、
いろいろな方法があります。既にレスもありますのでこの方法には触れません。
しかし、このような作業が、頻繁に発生するようであれば、マクロを使って処理
する方法が得策と思います。
下記マクロを実行すると範囲を聞いてきますので、一列に並べ替えたい範囲を
選択し、[OK]すると、このシートの右側に変換された新しいシートが出来ます。
シート名は、現シート名に"(変換)"を付加した名前です。
既にそのシート名が存在する場合は、現シートのすぐ右に移動し、内容(値)を
クリアした後に変換データが作成されます。
一応、コードの設定方法を書いておきます。
1.Alt + F11 で VBE(Visual Basic Editor)を開きます。
2.VBE のメニューから[挿入] -->[標準モジュール] を指定します。
3.モジュールウィンドウに下記コードをコピーして貼り付けます。
4.Alt + Q (または、右上隅の×)でウィンドウを閉じ、シートに戻ります。
5.メニューから[ツール]-->[マクロ]-->[セキュリティ]で「セキュリティレベル」を
「中」にして[OK]します。
6.実行するときは、Alt + F8 (メニューから[ツール]-->[マクロ]-->[マクロ])で
「データを別シートに一列変換」を指定し、[実行]ボタンを押します。
(頻繁に使うようでしたら、ショートカットキーに割り付けるといいかも・・・)
Sub データを別シートに一列変換()
Dim ShOrg As Worksheet
Dim ShNew As Worksheet
Dim Hani As Range
Dim Rng As Range
Dim Rw As Long
Dim N As Integer
Dim ShName As String
Set ShOrg = ActiveSheet
If InStr(ShOrg.Name, "(変換)") Then
MsgBox "変換対象のシートではありません。", vbCritical
Exit Sub
End If
ShName = ShOrg.Name & "(変換)"
On Error Resume Next
Set Hani = Application.InputBox(vbLf & " ※ 一列に変換する" & _
"データ範囲を指定して、[OK]を" & vbLf & _
" 押してください。" & vbLf & vbLf & " 右側に 【" & _
ShName & " 】変換シートを作成します。", Type:=8)
If Err.Number > 0 Then Exit Sub
For N = 1 To Worksheets.Count
If Worksheets(N).Name = ShName Then
Set ShNew = Worksheets(N)
ShNew.Cells.ClearContents
Worksheets(N).Move After:=ShOrg
Exit For
End If
Next N
If N > Worksheets.Count Then
Set ShNew = Sheets.Add(After:=ShOrg)
ShNew.Name = ShName
End If
ShOrg.Activate
For Each Rng In Hani
If Not Trim(Rng.Value) = "" Then
Rw = Rw + 1
ShNew.Cells(Rw, 1).Value = Rng.Value
End If
Next Rng
MsgBox " 『 " & ShNew.Name & " 』 のシートに変換データを" & _
"作成しました。", vbInformation
End Sub
No.2
- 回答日時:
要件が
1、A列のデータが最初に並ぶ
2、B列のデータが次に並ぶが同じ行のC列にデータがある場合、次の行のB列のデータより先にC列のデータが並ぶ
とします。
B列とC列の間に1列挿入
(県データはB列とD列になります)
C1に
=IF(ISBLANK(B1),"",COUNTA($B$1:B1))
E1に
=IF(ISBLANK(D1),"",COUNTA($B$1:B1,$D$1:D1))
C2に
=IF(ISBLANK(B2),"",MAX($C$1:C1,$E$1:E1)+1)
以下末尾までコピペ
E2に
=IF(ISBLANK(D2),"",MAX($C$1:C2,$E$1:E1)+1)
以下末尾までコピペ
A列の末尾の次の行に
B、C列を「値の貼り付け」
その下に
D、E列を「値の貼り付け」
で、
B列に貼り付けられた、
C、Eの数字が優先順位になるので、
そこで並べ替えをすれば、
ご希望に適うと思われます。
文字にすると判り辛いかもしれませんが、
『優先順位を関数で作って並べ替える』とご理解ください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 転職 長く続けられる好条件の求人でしょうか? 3 2023/07/12 18:45
- その他(国内) 3時!夜中なのか早朝なのか微妙な時間、5時に出るならシャワー浴びてお茶淹れて神棚、仏壇 2 2022/05/20 03:58
- Excel(エクセル) Excelマクロ 差分抽出の方法が知りたいです。 2 2023/03/07 13:25
- その他(地域情報・旅行・お出掛け) 海外旅行に行ったことがないのは今や珍しいですか? 12 2022/12/01 19:51
- 新幹線 【鉄道】全国にある新幹線の駅の格付けランキングを作ってみました!皆様のご意見をよろしくお願いします。 1 2023/02/11 16:42
- 電車・路線・地下鉄 東京から東北一周したい 8 2023/06/23 15:31
- 転職 下記のような募集は、良い会社でしょうか?どう思いますか?入ってみたら良くない事が無いでしょうか? 4 2023/03/03 16:40
- 地理学 日本の各都市。海外でどれくらい認知されてますか? 4 2022/07/21 19:25
- 倫理・人権 コロナ対策と応援演説について。 4 2022/07/07 16:10
- 東北 東北旅行7日間、宿泊場所のアドバイスお願いします 2 2023/02/15 23:22
このQ&Aを見た人はこんなQ&Aも見ています
-
それもChatGPT!?と驚いた使用方法を教えてください
仕事やプライベートでも利用が浸透してきたChatGPTですが、こんなときに使うの!!?とびっくりしたり、これは画期的な有効活用だ!とうなった事例があれば教えてください!
-
「平成」を感じるもの
「昭和レトロ」に続いて「平成レトロ」なる言葉が流行しています。 皆さんはどのようなモノ・コトに「平成」を感じますか?
-
とっておきの手土産を教えて
お呼ばれの時や、ちょっとした頂き物のお礼にと何かと必要なのに 自分のセレクトだとついマンネリ化してしまう手土産。 ¥5,000以内で手土産を用意するとしたらあなたは何を用意しますか??
-
おすすめのモーニング・朝食メニューを教えて!
コメダ珈琲店のモーニング ロイヤルホストのモーニング 牛丼チェーン店の朝食などなど、おいしいモーニング・朝食メニューがたくさんありますよね。
-
うちのカレーにはこれが入ってる!って食材ありますか?
カレーって同じルーから作っても、家庭によって入っているものや味が微妙に違っていて面白いですよね! 「我が家のカレーにはこれが入ってるよ!」 という食材や調味料はありますか?
-
エクセル 横並びの複数行データを縦1列にしたい
Excel(エクセル)
-
Excel VBAで、横並びのデータを縦並びにしたい
その他(Microsoft Office)
-
エクセルで横並びの複数データを縦のデータにしたい こんにちは。宜しくお願い致します。 A B C D
ソフトウェア
-
-
4
VBA横に並んでいるデータを縦に並ぶデータにしたいです。
Visual Basic(VBA)
-
5
エクセルで長い行を5行ごとに1列にするには?
Excel(エクセル)
-
6
エクセルで1列に500行並んだデータを5列毎に改行
Excel(エクセル)
-
7
エクセルで横データを縦に並べ変えたいです。
財務・会計・経理
-
8
VBA横のデータを縦にする方法
Excel(エクセル)
-
9
Excelで縦列グループが横並びになっているのを、縦1列に並び変えたいです。
Excel(エクセル)
-
10
【エクセル】区切り文字が含まれるデータを縦に展開する方法
Excel(エクセル)
-
11
エクセル2010 横の一部のデータを縦に
Excel(エクセル)
-
12
EXCELで「行と列を入れ替える」操作を何回も繰り返して自動実行する方法はないでしょうか?
Excel(エクセル)
-
13
Excelで、あるセルの値に応じて行を自動挿入したい
Visual Basic(VBA)
-
14
エクセルで、縦項目と横項目を複数列ごとに入れ替える方法はありますでしょうか?
Excel(エクセル)
-
15
エクセルで縦に並んだデータをある項目毎に横に並び替えたい
Excel(エクセル)
-
16
【エクセル】横に並んでいるものを縦に並べる
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~12/2】 国民的アニメ『サザエさん』が打ち切りになった理由を教えてください
- ・ちょっと先の未来クイズ第5問
- ・【お題】ヒーローの謝罪会見
- ・これが怖いの自分だけ?というものありますか?
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ExcelのVlookup関数の制限について
-
文字の色も参照 VLOOKUP
-
VBAで繰り返しコピーしながら下...
-
エクセルの保護で、列の表示や...
-
Excelのセルの色を変えた行(す...
-
Excelでの並べ替えを全シートま...
-
SUMPRODUCTにて別シートのデー...
-
ある数値に対して、値を返す数...
-
エクセルの列の限界は255列以上...
-
Excel の複数シートの列幅を同...
-
エクセルで、チェックボックス...
-
複数行の同列に同じ値があった...
-
エクセルで横並びの複数データ...
-
エクセル マクロ 標準モジュー...
-
【VBA】ピボットテーブルを既存...
-
Excelに自動で行の増減をしたい...
-
エクセル 日報売上を月報に展開...
-
【エクセル】1列のデータを交...
-
Excel データの並び替え
-
Excelで条件別にシートを振り分...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ExcelのVlookup関数の制限について
-
文字の色も参照 VLOOKUP
-
エクセルの保護で、列の表示や...
-
Excel の複数シートの列幅を同...
-
Excelでの並べ替えを全シートま...
-
エクセル マクロ 標準モジュー...
-
VBAで繰り返しコピーしながら下...
-
エクセルの列の限界は255列以上...
-
【条件付き書式】countifsで複...
-
Excel VBA ピボットテーブルに...
-
エクセルで、チェックボックス...
-
SUMPRODUCTにて別シートのデー...
-
スプレッドシートでindexとIMPO...
-
VLOOKアップ関数の結果の...
-
【VBA】ピボットテーブルを既存...
-
【VBA】複数のシートの指定した...
-
Excelのセルの色を変えた行(す...
-
Excelに自動で行の増減をしたい...
-
エクセルで横並びの複数データ...
-
【エクセル】1列のデータを交...
おすすめ情報