EXCELで集計やまとめをするマクロを作成しています。
数百行の中で数字が一番大きいところをピックアップするのですが、そのセルの値ならLARGE関数を使えば取得が出来るので大丈夫なのですが、
値を取得した先頭行の項目も取得したくコードを書いても、「修飾子が不正です」とエラーが出てしまいます。
考えているのは、
一番大きい数値の列番号を取得→取得した列番号の先頭行の値を取得→先頭行の取得した値をセルに収める
という感じです。
やり方がありましたら教えて頂けると幸いです。
やりたいこと
D1~F4の一番大きい数値と項目名をA2~B4にまとめたい
ワースト個数は取得出来るが、赤枠内のワースト1の項目名が取得出来ない
プログラム
VBA
1'不良数のランキング 2Sub Huryo_Rank() 3Dim i As Integer 4Dim first As Integer 5Dim k_row As Integer 6Dim k_name As String 7 8For i = 2 To Cells(Rows.Count, "D").End(xlUp).Row 9 first = WorksheetFunction.Large(Range(Cells(i, 4), Cells(i, 6)), 1) 10 Cells(i, 2).Value = first 'ワースト個数 11 12 k_row = WorksheetFunction.Large(Range(Cells(i, 4), Cells(i, 6)), 1).Column ' ここでエラーが出る 13 K_name = Cells(1, k_row).Value 14 Cells(i, 1).Value = K_name 'ワースト1 15 16 Next i 17 18End Sub
(LARGE関数でやる理由は、実際は1位だけじゃなく、2位以降も必要な為)
環境
Windows 10
EXCEL 2019
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/26 01:07
2020/08/26 01:17
2020/08/26 01:26