| 
    
     |  | ▼学生です さん: こんばんは。
 コードを拝見しました。
 >y=a+bx
 >  b=Sxy/Sx
 >  a=yave-bxave
 >    Sx=Σ(xi-xave)2
 >    Sxy=Σ(xi-xave)(yi-yave)
 >    xave=(1/n)Σxi
 >    yave=(1/n)Σyi
 
 この問題の上記の式を理解されていますか?
 例を作成してみるとよいと思いますが。
 a=1、b=2とした場合、
 A列に1〜30を入力し、
 B列に3,5,7,9・・・・と入力してみて下さい。
 これでこの計算式に当てはめて 結果、a=1、b=2になる事を確認して下さい。
 すると、やらなければならない事が見えてくると思います。
 
 そうすると、
 
 >Sub for3()
 >Dim x As Integer, y As Integer, a As Integer, b As Integer, sxy As Integer, sx As Integer, xave As Integer, yave As Integer, xi As Integer, yi As Integer, wx As Integer, wy As Integer
 '↑の変数の型が整数ではまずいかな?ということも見えてくると思います。
 
 >xi = Cells(x, 1).Value
 >yi = Cells(y, 2).Value
 >wx = 0
 >wy = 0
 >For x = 1 To 30 Step 1
 >wx = wx + x
 >Next x
 >For y = 1 To 30 Step 1
 >wy = wy + y
 >Next y
 >yi = a * xi + b
 >b = sxy - sx
 >a = yave - b * xave
 >sx = (wx - xave) ^ 2
 >sxy = (wx - xave) * (wy - yave)
 >xave = wx / 30
 >yave = wy / 30
 >Cells(1, 3).Value = a
 >Cells(2, 3).Value = b
 >End Sub
 
 |  |