2016-10-06 14 views
1

数式を文字列の中に入れようとしましたが、機能しません。誰かがこれを文字列に変換する手助けができますか?私はあなたのformualは、スプレッドシートに持っているものそのままであれば場所で、私はちょうど....どこExcel VBA数式内の文字列

Dim form As String 
form = =IFERROR(GETPIVOTDATA("[Measures].[Sum of Amount]",Pivot!$A$3,"[qAllData].[Year]","[qAllData].[Year].&[2.016E3]","[qAllData].[Month Name]","[qAllData].[Month Name].&["&$B9&"]","[qAllData].[PRODUCT_CODE]","[qAllData].[PRODUCT_CODE].&["&C$3&"]","[qAllData].[Product Name]","[qAllData].[Product Name].&["&C$4&"]")-C8-C7-C6-C5,0) 
+0

あなたは、そこでの参照と文字列としてそれをしたいですかあなたは 'ピボット!$ A $ 3'が実際にそのセル内のテキストであることをことをしたいですか? – BruceWayne

+0

あなたは数式がスプレッドシートに見えるようにしたいですか? –

+1

それが動作することを確認するためにシート自体に所望の式を書くと投稿します働く処方と説明をここに変数の値をスワップアウトする必要があります。式全体は、 '&'で連結された引用符の外にある変数で引用符で囲まなければなりません。それは私が投稿する式は、現在のスプレッドシートでの作業の式であることを、 '=「= ...' –

答えて

2

を知らない「「私がする必要がある」&」を知っているが、あなたがそれを挿入したいですVBAは、ちょうど:

Dim form As String 
form = "=IFERROR(GETPIVOTDATA(""[Measures].[Sum of Amount]"",Pivot!$A$3,""[qAllData].[Year]"",""[qAllData].[Year].&[2.016E3]"",""[qAllData].[Month Name]"",""[qAllData].[Month Name].&[""&$B9&""]"",""[qAllData].[PRODUCT_CODE]"",""[qAllData].[PRODUCT_CODE].&[""&C$3&""]"",""[qAllData].[Product Name]"",""[qAllData].[Product Name].&[""&C$4&""]"")-C8-C7-C6-C5,0)" 

これは単に""によって各"を交換し、引用符で全体を包みました。 VBAはこれを有効な数式として受け取りますが、これはあなたが本当に望むものであるかどうかはわかりません。

+0

のように何かを使用してそれを置き換えるために別のVARを使用しますおかげで@ジョンコールマン –

+0

私たちは同時にそれに答えました... –

1

それが働い式で、あなただけのStringとして変数にそれをしたい場合は、あなたがする必要があるすべてはそうのような二重引用符(")、次にダブルすべての内側の引用符("")、でそれを起動して終了です:それは "!... = IFERROR(GETPIVOTDATA(...、ピボット$ A $ 3" ``のように見えるかやると思いますので、

form = "=IFERROR(GETPIVOTDATA(""[Measures].[Sum of Amount]"",Pivot!$A$3,""[qAllData].[Year]"",""[qAllData].[Year].&[2.016E3]"",""[qAllData].[Month Name]"",""[qAllData].[Month Name].&[""&$B9&""]"",""[qAllData].[PRODUCT_CODE]"",""[qAllData].[PRODUCT_CODE].&[""&C$3&""]"",""[qAllData].[Product Name]"",""[qAllData].[Product Name].&[""&C$4&""]"")-C8-C7-C6-C5,0)" 
関連する問題