GO-AHEADの日記

GO-AHEADで出版した書籍の紹介をします

OpenOfficeでVBAプログラミング入門-10

OpenOfficeVBAプログラミング入門

amazon kindleを出版しました。


 サブプロシージャ-1

 サブプロシージャで以下の式を代入したら答えが返ってくるサブプロシージャをもつプログラムを作ってみましょう。

$f(x)=x^2+8x+15$


主プログラムでセルB1にxを入力して、

副プログラムでyを計算して

主プログラムでB2にyを表示します。


ここで、yはサブプロシージャ内で計算した値を戻してくることができません。このため、メインプロシージャでもサブプロシージャでも扱える変数とするため、Sub Mainの前に、変数を定義します。


Option VBAsupport 1 'VBAと互換性

 Dim y as Integer 'メイン、サブどちらでも使える変数

Sub Main
 Dim x as Integer

  x=Cells(1,2)

  Call cal(x)

  Cells(2,2)=y
End Sub


Sub cal( x as Integer)
  y=x^2+8*x+15
End Sub


x=5のときy=80となります。

f:id:GO-AHEAD:20200202123336p:plain