2016-06-21 4 views
0

私はExcel 2010を使用していますが、現在、私は1つのサブの変数の値を計算し、それを複数のサブシステムで使用したいと考えていますこれを行う方法を理解していない。ここで私はその最も基本的な形で複数のサブの変数を使用するVBA

Public Sub Calc() 
Dim i As Integer 
i = 10 - 5  
End Sub 


'Other sub that will use the value for i calculated in the Calc sub 

Sub Macro() 
y = i +5 
End Sub 

を使用しているものの一例である私が使用できるようにすると仮定していますどのように/「I」で/サブマクロにこの値を渡しますか?

答えて

1

を挿入し、新しいモジュールとしてiを定義します。そして、あなたはいつでも好きなときにそれを使用することができます

Public i As Integer 

詳細については、以下を参照してください。Scope of variables in Visual Basic for Applications

+0

................素敵な参照................ –

+0

@ Gary'sStudent、thanks!乾杯、Maciej –

1
Dim 上記の潜水艦を移動

Public i As Integer 

Public Sub Calc() 
    i = 10 - 5 
End Sub 

Sub Macro() 
    y = i + 5 
    MsgBox y 
End Sub 

Sub MAIN() 
    Call Calc 
    Call Macro 
End Sub 

MAIN()

+0

これはトリック、ありがとう! – bakeson

0

実行してみてください、私はサブの代わりに関数を使用したいと思います。

Sub Main() 
    Msgbox Macro(calc) 
end Sub 

Function Calc() as Integer 
    Dim i As Integer 
    i = 10 - 5  
    Calc = i 
End Function 

Function Macro(i as Integer) as Integer 
    Macro = i + 5 
End Function 
関連する問題