2016-12-02 5 views
2

Microsoftによると:https://msdn.microsoft.com/en-us/library/z2cty7t8(v=vs.100).aspx次の静的変数宣言は正しいです。VBA静的変数を定義するとコンパイラエラーが発生する

Public Sub MyProc() 
    static count as integer = 0 
    count = count + 1 
End Sub 

Word 2010 VBAによると、これはコンパイラエラーです。それは望んでいます:

Public Sub MyProc2() 
    static count as integer 
    count = count + 1 
End Sub 

静的カウントが0に初期化されていると仮定する必要があります。

これは他の人に役立つことを願っています。

答えて

4

あなたの質問のリンクは、VBAではなくVB.NETを指します。 VBAには、2番目の例のような構文が必要です。

正しいリンクはVisual Basic for Applications Reference – Static Statementです。 [新規]を入力として、VARNAME [(添字])] [] [新規]種類]

静的VARNAME [(添え字)]:構文があり、以下のように記載されています。 。 。

VBAでは、静的変数が宣言されている同じステートメントに値を割り当てることはできません。

+1

FWIW、これはStatic' 'に固有ではない - VBAができる唯一のシングルライン宣言\割り当ては新SomeClass'として'薄暗いFOOです。 – Comintern

+0

'静的カウントを整数として:count = 1' ... 1行での宣言と代入:) – dee

0

ありがとう、Word VBA 2010 compilerはこの構文が好きです。私は私の静的変数を、コンパイラの気まぐれではなく、定義する方が好きです。整数として

静的回数:カウント= 1

関連する問題