中小企業の働き方改革をサポート>>

関数を駆使すれば出来ると思うのですが・・・わかりません・・・。質問させて下さい。
excelの表を、

10 30 40 50 60 70 80 20 40
10 40 40 40 98 76 56 78 69
34 68 87 53 67 53 56 76 78
65 87 23 12 56 45 32 87 87
87 87 65 25 25 46 27 46 98
98 98 65 45 90 65 46 76 87

の様になっているのを、

10 30 40 50 60 70 80 20 40 10 40 40 40 98 76 56 78 69…
と一行に並べ変えたいのです。
行数が200行とありコピーペーストだと時間がかかるため何か良い方法無いでしょうか?
ご指導宜しくお願いします。

A 回答 (5件)

》 …と一行に並べ変えたいのです。


》 行数が200行とあり…

素朴な疑問ですが、Excel 2003 以前のバージョンだと 256列しかないのですが、「コピーペーストだと」問題なく出来ているのでしょうか?
10列×200行のデータを1行にするには 2000列必要では?
    • good
    • 1

A4からデータがあるとして、A1から下記並べるとすれば、下記式。


=OFFSET($A$4,(COLUMN()-1)/9,MOD(COLUMN()-1,9))
添部図参照。
「excelで複数行を一行に並び変える方法」の回答画像4
    • good
    • 1

A列からI列までで200行までデータがあるとしたら次の式を例えばK1セルに入力して下方にオートフィルドラッグします。



=IF(ROW(A1)>COUNT(A:I),"",INDEX($A:$I,MOD(ROUNDUP(ROW(A1)/9,0)-1,200)+1,MOD(ROW(A1)-1,9)+1))
    • good
    • 2

先日も同じ質問が出た。


http://okwave.jp/qa5438478.html
私の回答に、考え方!!も含め解説しておいた(丁寧に解説したつもり)。
読んで見てください。
列数は違うが、読み替えれば良い。
    • good
    • 1

表の部分を選択してコピー


秀丸などのテキストエディタに貼り付け
改行をタブに置換
コピーしてエクセルに貼り付け
    • good
    • 6

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QExcelで2行を1行にまとめるには?

Excelで2行を1行にまとめる方法を教えてください。下の6行を2行にするには、どうしたらいいのでしょうか?
よろしくおねがいします。

Excel2003です。


A little knowledge is a dangerous thing.
(生兵法はけがのもと)
空白行
After a storm comes a calm.
(雨降って地固まる)
空白行


第1行:A little knowledge is a dangerous thing.(生兵法はけがのもと)
第2行:After a storm comes a calm.(雨降って地固まる)

Aベストアンサー

(データ)A1:A100
(1)A little knowledge is a dangerous thing.
(2)(生兵法はけがのもと)
(3)空白行
(4)After a storm comes a calm.
(5)(雨降って地固まる)
(6)空白行
(7)・・・・(略)
(8)・・・・
(9)・・・・
(関数式)E1に(B1でも良いが)
=INDEX($A$1:$A$100,(ROW()-1)*3+1,0)&INDEX($A$1:$A$100,(ROW()-1)*3+2,0)
E2以下最下行の1/3行まで複写する。
(結果)
(1)A little knowledge is a dangerous thing.(生兵法はけがのもと)
(2)After a storm comes a calm.(雨降って地固まる)
(3)以下略

Q複数行に渡るセルを1行にまとめることはできますか?

こんにちは。
画像上のような商品仕入れ表があります。
V列に品番、W列は品名、X列は規格(色など)、Y列は価格、W~AFは卸先にそれぞれ発送した数です。同じ品番(商品)でも規格が複数あるため、規格の数分行がわかれてます。
それを下の画像のように同じ品番のものは規格関係無しで1行にまとめたいのです。
違うシートのB列に品番、C列に品名、D列に価格、E~Kは卸先への全規格合計数を入れたいです。
VBAでも関数でも構いませんので教えてくださるとうれしいです。よろしくお願いします。

Aベストアンサー

こんにちは!

やり方だけ・・・
元データはSheet1にあり、Sheet2に表示するとします。
↓の画像のように作業用の列を設けるのが簡単だと思います。

Sheet1の作業列AH6セルに
=IF(COUNTIF(V$6:V6,V6)=1,ROW(),"")
という数式を入れ、フィルハンドルでずぃ~~~!っと下へコピーしておきます。

Sheet2のB2セルに
=IFERROR(INDEX(Sheet1!$V:$AF,SMALL(Sheet1!$AH:$AH,ROW(A1)),MATCH(B$1,Sheet1!$V$5:$AF$5,0)),"")
という数式を入れ、D2セルまでフィル&コピー!

E2セルには
=IF($B2="","",SUMIF(Sheet1!$V:$V,$B2,OFFSET(Sheet1!$V:$V,,MATCH(E$1,Sheet1!$V$5:$AF$5,0)-1)))
という数式を入れ、K2セルまでフィル&コピー!

最後にB2~K2セルを範囲指定 → K2セルのフィルハンドルで下へコピーすると
画像のような感じになります。

※ 作業列が目障りであれば、遠く離れた列にするか、
非表示にしておきます。m(_ _)m

こんにちは!

やり方だけ・・・
元データはSheet1にあり、Sheet2に表示するとします。
↓の画像のように作業用の列を設けるのが簡単だと思います。

Sheet1の作業列AH6セルに
=IF(COUNTIF(V$6:V6,V6)=1,ROW(),"")
という数式を入れ、フィルハンドルでずぃ~~~!っと下へコピーしておきます。

Sheet2のB2セルに
=IFERROR(INDEX(Sheet1!$V:$AF,SMALL(Sheet1!$AH:$AH,ROW(A1)),MATCH(B$1,Sheet1!$V$5:$AF$5,0)),"")
という数式を入れ、D2セルまでフィル&コピー!

E2セルには
=IF($B2="","",SUMIF(Sheet1!$V:$V,$...続きを読む

Qエクセルで複数の列を1列にまとめる方法

エクセルの1つのシートの複数の列にデータがあって、それを1つの列にまとめる方法を教えてください。
A列のデータの最後の次にB列のデータ、C列のデータと次々にデータをつなげたいのです。
よろしくお願いします。

Aベストアンサー

No.1です。以下でどうでしょう。シート1からシート2へコピーします。
i = 1
For 列 = 1 To 255
For 行 = 1 To Cells(65536, 列).End(xlUp).Row
Sheets("sheet2").Cells(i, 1) = Sheets("sheet1").Cells(行, 列)
i = i + 1
Next
Next

QExcel:複数のセルの内容を、ひとつのセルにすべて移したい。

たとえばA.B.Cのセルがあって、この内容をDのセルに
すべて移すにはどうしたらいいんでしょうか?

A.B.Cの内容をコピー貼り付けだと、
どうしてもDひとつだけでなく、その隣のセルに
内容をコピーしてしまいます。

Aベストアンサー

コピーしたいセルを選択してCtl+C

全部を貼り付けたいセルをダブルクリック

Ctl+Vではなく、オフィスクリップボードから貼り付け

Qエクセル 複数行ある同一商品を1行にまとめるには?

同一内容が入力された複数行の合計を出す方法を教えてください。
   
エクセルの表でA列に商品名、B列に色の種類、C列~E列にサイズごとの個数がある、まったく同じ商品が、複数行にランダムに掲載されています。

A列、B列で同一の情報を持つ商品について、C列~E列のサイズごとの合計を出したいのです。

例)商品名、色、サイズ個数(C列:Sサイズ、D列:Mサイズ、E列:Lサイズの順です。)

A1:Tシャツ B1:ホワイト C1:5 D1:4 E1:3  
A2:Tシャツ B2:ブラック C2:3 D2:5 E2:5
A3: Tシャツ B2:ホワイト C3:3 D3:3 E3:2
A4: Tシャツ B2:ブラック C4:3 D4:2 E4:3

各商品が300行程あり、オートサムではやりきれません。
すべての各商品(A列、B列が一致するもの)を1行ごとにまとめたシートを作成するにはどうしたら良いでしょうか?

Aベストアンサー

merlionXXです。
お書きになった質問の通り、関数で回答すれば、「質問の例が簡単すぎたようです」と言われ、再度VBAで回答すれば、「例は大変簡略化しておりまして、実際には~」とおっしゃる。
どうしてそんなに情報を小出しにするのかなあ?
しかも新たに出された条件で「商品情報がA~Dまでが商品情報」??
A~Dまでが商品情報だからなんなんですか?
A~Dまでがすべて一致することが必要なんですか?それとも別に何か違う条件があるのですか?

一応、A~Dまでが一致するもので集計するというコードです。
データがあるシート名はSheet1
サイズ別に個数をだすシート名はSheet2とします。
今後は、もう少し回答者のことも考えて、必要な情報は正しく、洩れなく、わかりやすく質問なさるようにお願いしますね。

Sub test02()
Dim myDic As Object, ms As Object, ns As Object
Dim c As Range, i As Integer, dta As String
Set myDic = CreateObject("Scripting.Dictionary")
Set ms = Sheets("Sheet1")
Set ns = Sheets("Sheet2")
For i = 4 To 8
For Each c In ms.Range(ms.Cells(1, "A"), ms.Cells(Rows.Count, "A").End(xlUp))
dta = c.Value & ":" & c.Offset(0, 1).Value & ":" & c.Offset(0, 2).Value & ":" & c.Offset(0, 3).Value
If Not myDic.exists(dta) Then
myDic.Add dta, c.Offset(0, i).Value
Else
myDic(dta) = myDic(dta) + c.Offset(0, i).Value
End If
Next c
ns.Range("A1").Resize(myDic.Count, 1).Value = Application.Transpose(myDic.Keys)
ns.Cells(1, i + 1).Resize(myDic.Count, 1).Value = Application.Transpose(myDic.Items)
myDic.RemoveAll
Next i
ns.Columns("A:A").TextToColumns DataType:=xlDelimited, Destination:=Range("A1"), Other:=True, OtherChar:=":"
Set myDic = Nothing
Set ms = Nothing
Set ns = Nothing
End Sub

merlionXXです。
お書きになった質問の通り、関数で回答すれば、「質問の例が簡単すぎたようです」と言われ、再度VBAで回答すれば、「例は大変簡略化しておりまして、実際には~」とおっしゃる。
どうしてそんなに情報を小出しにするのかなあ?
しかも新たに出された条件で「商品情報がA~Dまでが商品情報」??
A~Dまでが商品情報だからなんなんですか?
A~Dまでがすべて一致することが必要なんですか?それとも別に何か違う条件があるのですか?

一応、A~Dまでが一致するもので集計するというコード...続きを読む

Qエクセルで複数列の数字を1行に整列したい

エクセルで複数列の数字を1行に整列したい

24列、365行の数値が並んでいます。
これを1行8760列に並べ替えたいと思っています。

25列目から2行目の24列分を移動。49列目からに3行目の24列分・・・
といった具合で、具体的には下記の通りです。

例:
1.○○ ●● ・・・・・・・(24列)
2.□□ ■■ ・・・・・・・(24列)
3.▽▽ ◎◎ ・・・・・・・(24列)
     ・
     ・
     ・
    
下記のように変換したいのです。(1行で8760列に)
1.○○ ●● ・・・・・□□ ■■ ・・・・・▽▽ ◎◎・・・・・

過去ログも参照したのですが過去の応用が効かずなかなか上手く
いきません。 
よろしくお願い致します。

Aベストアンサー

Y1=OFFSET($A$1,INT((COLUMN()-1)/24),MOD(COLUMN()-1,24))
★LXX列まで右にコピー

Qexcelで行や列をまとめる

excelで行や列をまとめて+をクリックすると展開されるようにできますが
どうやってやればよいでしょうか?

Aベストアンサー

メニュー → データ → グループとアウトライン設定 → グループ化
でしょうか?

Q複数列を一列にする方法

Excelで複数列に渡るデータを1列にまとめたいのですが、カット&ペースト以外によい方法はありませんでしょうか。

例えば表にあるセルA1-A10、B1-B10、C1-C10、D1-D10、E1-E10のデータを
F列のF1から下へ一列に並べるといった感じです。
A1-A10→F1-F10
B1-B10→F11-F20
C1-C10→F21-F30
D1-D10→F31-F40
E1-E10→F41-F50

よろしくお願いします。

Aベストアンサー

F1セルには次の式を入力し下方にオートフィルドラッグします。
=IF(ROW(A1)>10*5,"",INDEX($A$1:$E$10,IF(MOD(ROW(A1),10)=0,10,MOD(ROW(A1),10)),ROUNDUP(ROW(A1)/10,0)))

Qエクセルで、条件に一致した行を別のセルに抜き出す方法

エクセルで、指定した条件に一致するセルを含む行をすべて抜き出す方法が知りたいです。

たとえば、

<A列> <B列> <C列>
7/1 りんご 100円
7/2 ぶどう 200円
7/2 すいか 300円
7/3 みかん 100円

このような表があって、100円を含む行をそのままの形で、
別のセル(同じシート内)に抜き出したいのですが。

7/1 りんご 100円
7/3 みかん 100円

抽出するだけならオートフィルターでもできますが、
抽出結果を自動的に、別の場所に、常に表示させておきたいのです。

初歩的な質問だと思いますが、検索しても分からなかったので、よろしくお願いします。

Aベストアンサー

同じ質問が結構よく出てますが、そんなに初歩的でもありません
別シートのA1セルに「100円」と入力し、そのシートの任意のセルに以下の式を貼り付けて下さい。後は、下方向、右方向にコピー。
日付のセル書式は「日付」形式に再設定してください

=IF(COUNTIF(Sheet1!$C:$C,$A$1)>=ROW(A1),INDEX(Sheet1!A:A,LARGE(INDEX((Sheet1!$C$1:$C$500=$A$1)*ROW(Sheet1!$C$1:$C$500),),COUNTIF(Sheet1!$C:$C,$A$1)-ROW(A1)+1)),"")

データ範囲は500行までとしていますが、必要に応じて変更して下さい

Q【EXCEL】複数行を1行に

エクセルにまだまだ不慣れなもので、質問させてください。
下の図《1》のようなデータが大量にあります。CSV形式に出力したいのですが《2》のように並べ替えなければいけませんよね?(←ここら変の知識も未熟なものですみません。。)
《1》のようなデータを《2》のような並びにする事は可能でしょうか?
ちなみに《1》のようなデータは、一行ずつ空白行をはさみ、下まで何百件も並んでいます。また、1データの行数もランダムです。

何か良い方法がありましたら是非ご教授下さい。よろしくお願い致します。


《1》
A  B   C   D   E   F
1 ●●
2 ■■
3 ▲▲
4 ◎◎


《2》
A   B  C  D  E   F
1 ●● ■■ ▲▲ ◎◎
2
3
4

Aベストアンサー

ちょっとかわった方法ですが…

まずそのファイルを「CSV(カンマ区切り)形式」に保存します。
保存したファイルを正規表現の使えるテキストエディタで開きます。
置換で
「\n\n」→「丸い卵も切りようで四角」
「\n」→「,」
「丸い卵も切りようで四角」→「\n」
その後、テキストエディタを閉じます。

そのファイルをExcelで読み込めば、目指す形式に並び替えられているはずです。

ただし、ExcelでCSVファイルを読み込むときには時間がかかる場合がありますので、あわてずにやってみてください。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報