|
▼℃素人 さん:
こんばんは。
>初の投稿にも関わらず質問させて頂きます事をお許しください。
>
>質問の内容でございますが,
>文章では表しにくい感がございましたので,
>下のようにまとめさせていただきました。
>
>
>試行 項目1 項目2 試行 項目1 項目2
>1 400 A 10 400 A
>2 350 A 9 500 B
>3 300 B 8 450 A
>4 400 A 7 550 A
>5 600 B 6 500 A
>6 500 A ⇒ 5 600 B
>7 550 A 4 400 A
>8 450 A 3 300 B
>9 500 B 2 350 A
>10 400 A 1 400 A
>・ ・ ・
>・ ・ ・
>・ ・ ・
>
>まず,左から右のように変換したのですが,
ここまではOKということなので
この先から・・・。
>試行 項目1 項目2 same different
>10 400 A
>9 500 B
>8 450 A
>7 550 A
>6 500 A
>5 600 B
>4 400 A
>3 300 B
>2 350 A
>1 400 A
アクティブシートのA列から上記のデータが入力されているとして
(1行目が項目名、データは2行目以降)
'======================================================
Sub main()
Dim comptry As Variant
Dim rng As Range
comptry = Application.InputBox("比較する試行前入力", , , , , , , 1)
'ここで、1とか2とかを指定します。
If TypeName(comptry) <> "Boolean" Then
Set rng = Range("a2", Cells(Rows.Count, 1).End(xlUp))
If rng.Row > 1 Then
With rng.Offset(0, 3).Resize(, 2)
.Formula = Array( _
"=if(a2<=" & comptry & ",""***"",IF(C2=C" & 2 + comptry & ",B2,""""))", _
"=if(a2<=" & comptry & ",""***"",IF(C2=C" & 2 + comptry & ","""",b2))")
End With
End If
End If
End Sub
上記のコードを実行して見てください。
入力要求がありますから、1試行前と比較なら、1
2試行前と比較なら、2
と指定して下さい。
|
|