[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『並び換え』(けんさん)
集計表
サイズ 計画数 要尺 必要m 計画数 要尺 必要m 計画数 要尺 必要m RE NV OW M 415 0.126 52.29 420 0.126 52.92 380 0.126 47.88 L 470 0.139 65.33 480 0.139 66.72 LL 300 0.166 49.80 380 0.166 63.08 3L 200 0.180 36.00
< 使用 Excel:Excel2007、使用 OS:Windows7 >
とりあえず、Excelには「データ」の「並び替え」機能がありますよ。
自動化したいならば、操作をマクロ記録するだけです。
(???) 2015/10/01(木) 17:17
集計表の並び替え
RE M 415 0.126 52.29 RE LL 300 0.166 49.80 RE 3L 200 0.180 36.00 NV M 420 0.126 52.92 NV L 470 0.139 65.33 OW M 380 0.126 47.88 OW L 480 0.139 66.72 OW LL 380 0.166 63.08 この様に並び替えをしたいので宜しくお願いします。
Sub test() Dim wkOut As Worksheet Dim i As Long Dim j As Long Dim iMax As Long Dim iR As Long
Set wkOut = Sheets("Sheet2") wkOut.Cells.Clear
iMax = Cells(1, Columns.Count).End(xlToLeft).Column
For i = 2 To iMax Step 3 For j = 3 To Cells(Rows.Count, "A").End(xlUp).Row If Cells(j, i).Value <> "" Then iR = iR + 1 wkOut.Cells(iR, "A").Value = Cells(2, i + 1).Value wkOut.Cells(iR, "B").Value = Cells(j, 1).Value wkOut.Cells(iR, "C").Value = Cells(j, i).Value wkOut.Cells(iR, "D").Value = Cells(j, i + 1).Value wkOut.Cells(iR, "E").Value = Cells(j, i + 2).Value End If Next j Next i End Sub (???) 2015/10/01(木) 17:52
To(けんさん) さん
回答ではありません。
レスは、画面下のコメント欄とHN欄に書きこんでアップしてください。 でないと、↑のように、レスがあったのかないかも、目立たずわかりにくいですね。 だれがいつ、レスしたのかもわかりませんし。
(β) 2015/10/03(土) 16:40
(けんさん) 2015/10/03(土) 17:30
マクロを使ったことがないから、という答えは却下です。今回やってみればよいだけ。
(???) 2015/10/05(月) 11:34
M 415 0.126 52.29 LL 300 0.166 49.8 3L 200 0.18 36 M 420 0.126 52.92 L 470 0.139 65.33 M 380 0.126 47.88 L 480 0.139 66.72 LL 380 0.166 63.08
(けんさん) 2015/10/06(火) 10:27
横からしつれいします。 >wkOut.Cells(iR, "A").Value = Cells(2, i + 1).Value →wkOut.Cells(iR, "A").Value = Cells(2, i).Value かもしれないですね (さくらだ) 2015/10/06(火) 10:36
(けんさん) 2015/10/06(火) 11:00
この『並び替え』は関数使用で並び替え方法の指導を願いします。
Sheet1の中に品番ごとの集計表が複数あります、その表を関数を使用後に並び替えをして集計表を作成したいのです。
前回【空欄の場合には詰めるという部分が難しいので、マクロ案がベストと思います】とコメントして頂きましたが関数使用での並び替えは無理でしょうか?
出来れば自動化に持っていきたいのです。
宜しくお願いします。
(けんさん) 2015/10/07(水) 17:10
あと、私は式作成には膨大な時間がかかる割に、マクロなら数分で作成しますので、空欄を詰めて複数列、
複数表を1つにまとめるような複雑な要求を数式解決してくれ、というご要望には応えられません。
行は不定です、とか、更に無茶な難題を追加されそうですし、その度に数式修正依頼されても困りますから。
(範囲内全部連結してから文字列置換で空欄除去後、分割出力すればできそうに思いますが、考えたくない…。
カラー表示とやらが、他のデータとは違うルールで並んでいるのも困ります)
1年くらいかけて、ご自分で試行錯誤してみてはいかがでしょうか?
(???) 2015/10/07(水) 17:47
とりあえず式の場合。 A30セルから集計表を作る場合。
他の場所に作成する際に自分で式を修正できない場合は使わないほうがいい。 一応式を作りはしたがマクロのほうが適切だと思う。
A30セル =IF(ROW(A1)<=COUNT(B$3:B$6),B$2,IF(ROW(A1)<=COUNT(B$3:B$6,E$3:E$6),E$2,IF(ROW(A1)<=COUNT(B$3:B$6,E$3:E$6,H$3:H$6),H$2,"")))
B30セル =IFERROR(INDEX(A$1:A$6,SMALL(IF(INDEX(B$3:H$6,,MATCH(A30,B$2:H$2,0))<>"",ROW(A$3:A$6),""),COUNTIF(A$30:A30,A30))),"") B30セルの式は式を確定する際にShiftキーとCtrlキーを押しながらEnterキーで確定する。 (確定後、式が{}で囲まれればOK)
C30セル =IFERROR(TEXT(SUMPRODUCT(($A$3:$A$6=$B30)*($B$2:$H$2=$A30)*B$3:H$6)&"","G/標準;;")*1,"")
A30セルとB30セルは下へフィルコピー、C30セルは右および下へフィルコピー。 (ねむねむ) 2015/10/08(木) 10:22
(けんさん) 2015/10/08(木) 12:41
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.