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

最大値、最小値、平均値を求めつつ、奇数か偶数かの判定を行う問題です。

<問題>

<結果>

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

 

 

 

<コーディング>

Sub 最大最少平均()

Dim r As Range                  '変数宣言
Set r = Range("A:A")           'A列を代入

Range("B2").Value = WorksheetFunction.Max(r)                'A列の最大値を求めてB2に返す
Range("C2").Value = WorksheetFunction.Min(r)                 'A列の最小値を求めてC2に返す
Range("D2").Value = WorksheetFunction.Average(r)           'A列の平均値を求めてD2に返す
Range("D2").Value = WorksheetFunction.RoundUp(Range("D2"), 0)   'D2の値を切り上げ

 

'奇数偶数判定

Dim WKS As Worksheet      '変数宣言
Dim i As Long                   '変数宣言

Set WKS = ThisWorkbook.Worksheets("sheet1")

i = 2

  Do While WKS.Cells(i, 1) <> ""  'セル(2,1)から空白セルになるまで繰り返し処理

'処理起点

  If WKS.Cells(i, 1).Value Mod 2 = 0 Then   'セル(2,1)を2で割った余りが0の場合は
  WKS.Cells(i, 5) = "偶数"                    'セル(2,5)に偶数を返す

  Else                                           'それ以外の場合は
    
  WKS.Cells(i, 5) = "奇数"                    'セル(2,5)に奇数を返す
 
  End If

i = i + 1                                         '行数をひとつずつ増やす

'処理終点

Loop


End Sub

 

この週末、あと数問挑戦したいと思います。