Access 2016コマンドボタンからRスクリプトを実行しようとしています。スクリプトはファイルを読み込み、ファイル内の値からプロットを生成します。私は、Windows 10、コマンドラインから実行するとき、次のように それはうまく機能:Access 2016コマンドボタンからRスクリプトを実行すると問題が発生する
C:\Program Files\R\R-3.3.2\bin>Rscript --vanilla H:\R\analyze.R H:\R\LCH_22.vcf
私はここでのアクセス2016年にボタンから
をRスクリプトを実行したいと思い、私は「VBAスクリプトです
Dim file_path As String
file_path = "H:\R\LCH_22.vcf"
Dim RetVal
RetVal = shell("""C:\Program Files\R\R-3.3.2\bin\Rscript.exe"" --vanilla ""H:\R\analyze.R"" ""H:\R\LCH_22.vcf""", vbHide)
MsgBox RetVal
スクリプトは実行されますが、空のプロットが生成されます。すべての軸とラベルがありますが、すべてのデータがありません。なぜこれが起こっているのか分かりません。
フォローアップ私はvbNormalFocus
とvbHide
を交換し、ええ...データとのプロットを生成することができましたしました!しかし、なぜシェルコマンドに変数を代入しても機能しないのか分かりません。誰かがこれを正しく達成する方法を説明してもらえますか? Accessのフォームからファイル名を読み込み、コードのこの部分は動的でなければなりません(下記の試行例を参照)。
Dim file_path
file_path = "C:\R\DNA.vcf"
Dim RetVal
RetVal = shell("""C:\Program Files\R\R-3.3.2\bin\Rscript.exe"" --vanilla ""C:\R\analyze.R"" "" & file_path & """, vbNormalFocus)
ご協力いただきありがとうございます。