コンマ区切り文字列を作成しました。この文字列をApplication.Runプロシージャの入力として使用したいと思います。カンマ区切りの文字列を関数パラメータとして使用する
文字列は正確に以下のように見える - 引用符で..
MyString = "First_Number", "Second_Number", "Third_Number"
私はパラメータ入力として、この文字列を使用したい:
Application.Run("'" & "Book2.xlsm" & "'!MySub", *MyString*)
それは動作しません..私は "取得引数が最適ではありません "。
次のコードで文字列を作成します。範囲はパラメータを含む単なる行です。
Function csvRange(myRange As Range)
Dim csvRangeOutput
For Each entry In myRange
csvRangeOutput = csvRangeOutput & entry.Value & """, " & """"
Next
csvRange = Left(csvRangeOutput, Len(csvRangeOutput) - 4)
End Function
誰かが助けてくれることを願っています。
私は本当に完全に答える時間がありませんが、これを見てください:https://stackoverflow.com/questions/30536949/custom-menu-passing-a-worksheet-variable-through-onaction VBAはばかげています引用符で囲む必要がありますので、debug.printを確認して、各タイプの変数に適切な数の引用符が付いていることを確認してください。 –
'MyString =" first_number、second_number、third_number "のような単一の文字列を渡すだけで、' MySub'では 'Split'を使用して個々の引数に分割し、必要に応じて使用します。 – Dave
どこから 'MyString'の値を取得していますか?彼らの数は変わるでしょうか? ParamArrayはどうですか? – Brian