| 
    
     |  | ▼ゴルゴン130 さん: >こんにちは
 >VBA勉強し始めたばかりなのですが、んんーぜんぜんだめです。
 >自分なりに作ってみたのですが、これを作るのにもかなり時間がかかりました。。。
 いや、これが一番の近道です。王道と私は思いますよ。^ ^
 
 パパッと書いたのでエラー処理、数値判断などはしてませんが、
 原型サンプルとしてはたぶん動作すると思います。(XL2000〜対応)
 アドバイスですが、変数のスコープ(適用範囲)は、なるべく小さくした方が
 いいですよ。この程度ならどうって事は無いですが、もう少し複雑になると
 分けがわからなくなりますから。
 その意味でもサンプルにして下さい。
 
 Option Explicit
 
 Private Sub CommandButton1_Click()
 Dim lBuf(2) As Long
 Dim goukei As Long
 Dim I As Long
 Dim Suuti As Variant
 
 Suuti = Array(2, 4, 9)
 '//////他にも応用が利く一般的な例///配列に1個ずつデータを入力する/////
 For I = 0 To 2
 lBuf(I) = Suuti(I)
 Next I
 goukei = test(lBuf)
 Debug.Print goukei
 
 '/////////////Array関数で作成した配列を渡す例//////////
 goukei = test2(Suuti)
 Debug.Print goukei
 
 End Sub
 '//////他にも応用が利く一般的な例////////
 Public Function test(pData() As Long) As Long
 Dim I As Long
 Dim lAns As Long
 
 For I = 0 To UBound(pData())
 lAns = lAns + pData(I)
 Next I
 test = lAns
 End Function
 '/////////////Array関数で作成した配列を渡す例//////////
 Public Function test2(pData As Variant) As Long
 Dim I As Long
 Dim lAns As Long
 
 For I = 0 To UBound(pData)
 lAns = lAns + pData(I)
 Next I
 test2 = lAns
 End Function
 
 ケースバイケースで使ってください。
 
 |  |