またまた参考書についていた演習問題に挑戦しました。

身長、体重からBMI 「体重(kg)÷(身長(m)×身長(m))」を算出して肥満度を判定するものです。

<問題>

 

<結果>  実行ボタンをポチッと押したらうまくいきました。

この問題はかなり苦労しました・・・ 参考書の解答とは違う記述となりましたが、色々勉強になりました。

<コーディング>

Sub BMI判定()

Dim Wks As Worksheet
Dim Ht As Double    'Ht=身長
Dim Wt As Double    'Wt=身長
Dim Form As String  'Form=BMI計算式
Dim i As Long
Dim r As Range



Set Wks = ThisWorkbook.Worksheets("sheet1")

With Wks

For i = 2 To 11     '2行目から11行目

Ht = .Cells(i, 1)   '身長のセル
Wt = .Cells(i, 2)   '体重のセル
Form = Round(((Wt / (Ht) ^ 2) * 10000), 1)  'FormにBMI計算式を代入
.Cells(i, 3) = Form                         'セルに計算式を代入
Set r = .Cells(i, 3)                        'If文で一文字で記述するため"r"変数に代入



        If r < 18.5 Then                        '18.5未満の場合は

            .Cells(i, 4) = "やせ"

            ElseIf r >= 18.5 And r < 25 Then    '18.5以上かつ25未満の場合は

            .Cells(i, 4) = "標準"

            ElseIf r >= 25 And r < 30 Then      '25以上かつ30未満の場合は

            .Cells(i, 4) = "肥満"

            Else                                '上記条件以外の場合は

            .Cells(i, 4) = "高度肥満"

        End If

Next i


End With
End Sub