#複数行を縦に並べる方法
1つづつコピペで縦横を入れ替えて貼り付け…を繰り返していたのですが。。
とてつもない量を置き換えなくてはいけなく、立ち行かずご質問させて頂きました。
1行目にはAB列
2行目にはAB列
3行目にはABCD列
…
のように数値が2000行近く入っています。
これを写真K列のように1列に並べたいですがいい方法はないでしょうか…。。
丸投げで大変申し訳ございませんがご教示いただけますと幸いです。。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

回答4件
0
秀丸等の正規表現で置換できるテキストエディタを使い
テキストエディタに貼りつけ
タブを改行に置換
「\t」を[\n]に置換
空行を削除
「^\n」を「」に置換
が一番簡単だと思います。
投稿2019/06/13 00:02
総合スコア1286
0
TEXTJOINで余計な作業列無しですっきりいけそうでした。
=TRANSPOSE(SPLIT(TEXTJOIN(",",TRUE,A1:C2000),",",TRUE,TRUE))
↓最初の投稿
作業列を1列使う + Excelには無いスプレッドシート関数 TRANSPOSE,SPLIT,JOIN で処理なら可能です。
値が入っているのがA~D列で、J列を作業列として使えるなら
一度 各行の値を joinで連結したいので J1に
=JOIN(",",A1:C1)
を入れて、JIをコピーし J2~J2000に貼付け
で、K1に以下の式を入れる
=TRANSPOSE(SPLIT(JOIN(",",J1:J2000),",",TRUE,TRUE))
横、縦と連結させた後、区切って 横 → 縦 って感じです。
投稿2019/07/25 03:09
編集2019/07/25 04:27総合スコア3002
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
スプレッドシートでの回答です
下記のコードをスクリプトエディタにはりつけてから、K1セルに
=q194679("A1:B2000")
と書いてください
javascript
1function q194679(a1notation) { 2 return SpreadsheetApp.getActiveSheet().getRange(a1notation).getValues().reduce(function(a,c){ return a.concat(c);}).filter(function(e){ return e !== "";}).map(function(e){ return [e];}); 3}
投稿2019/06/13 03:29
総合スコア12705
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
ベストアンサー
元データが何行何列あるのかわかりませんが、こんな方法で一行にまとめて、空白がある場合はフィルタ等を使って除去し、結果的にできたデータを最終的な結果として保持したい行にコピペするとかどうでしょう。
ちょっと言葉不足な気がするので補足すると
この方法なら「行番号」「列番号」の列は、例えば元データの最大列数が10で「行番号列」が列A,「列番号列」が列Bとすると、列Aと列Bの1行目に「1」を入れて、
列Aの2行目を「=IF(B1=10,A1+1,A1)」
列Bの2行目を「=IF(B1=10,1,B1+1)」
にして、2行目を下にびゃーっと引っ張れば作れます。
--以下ちょっと勘違いしてた回答
エクセルなら
1行目に貼り付けたい内容をコピー→貼り付け時に「貼り付けのオプション」で「行列を入れ替える」
の繰り返しでいいのでは(ひとつずつコピーするよりは)
Googleスプレッドシートなら「特殊貼り付け」の「転置して貼り付け」ですかね。
2000行のデータを何行分に分けたいのかわからないので、分けたい行数が少ない場合じゃないとこれでも辛いかもしれないですが。
投稿2019/06/12 20:46
編集2019/06/12 21:44総合スコア8947
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。