予後調査において,返信が最後にあった年のチェック。
いっつも関数をちまちま組んでたけど,
もうマクロにしてしまった方が楽だと考え作成。
エクセルマクロはまともにいじったことがないので,
たかがこれだけのコードを書くのに2時間近く使ってしまった。
ま,今後はこれの変数を変えるだけで行けるのでよしとする。
どうせ後で探し出せないので,ここにもめ。
(1992~2010までの予後調査への返信の有無を
並べたデータを吐き出す)
********************************************
Dim Subjects As Integer
Subjects = 5339
Dim start_cell As Integer
start_cell = 31 ' AEからスタートだと31
Dim Result_cell As Integer
Result_cell = start_cell + 1 ' 結果表示セルの列番号
Dim Chk_Year As Integer
Chk_Year = 2010 ' start_cellに対応する年
Dim End_Year As Integer
End_Year = 1992 ' 最終年
For j = 2 To Subjects
i = start_cell
y = Chk_Year
Do
If (Cells(j, i).Value = "") = False Then
Cells(j, Result_cell).Value = y
y = 0
End If
i = i - 1
y = y - 1
Loop Until y < End_Year
Next j
*********************************************
0 件のコメント:
コメントを投稿