Running R à partir de VBA Excel sans RExcel
Ce processus peut être simplifié?
Tout d'abord, je ouvrir manuellement ce fichier dans R:
C:\R\ExampleModel\ModelScript.R
De R-Éditeur, lorsque le code ci-dessous est exécutée à partir de l'open ModelScript.R fichier, il traite le Modèle.Script R correctement.
source("C:\\R\\ExampleModel\\Model.R", echo=T)
Dans Excel, je veux exécuter le code source ci-dessus sans l'ouvrir manuellement ModelScript.R de la R en premier. Est-ce que je peux modifier dans le code VBA ci-dessous pour traiter la source() commande automatiquement à partir d'Excel/VBA? Si un processus de traitement par lots est la seule option, court de Rexcel, veuillez utiliser l'exemple des extensions fournies.
Excel 2007 VBA code:
Sub RRUN()
Dim rCommand As String
rCommand = "C:\\Program Files\\R\\R-3.0.0\\bin\\Rscript.exe --verbose C:\\R\\ExampleModel\\ModelScript.R"
'Timer Set to run full Model.R script
Application.Wait Now + TimeValue("00:00:05")
'Runs R Script and Arguements into process
Shell rCommand, vbNormalFocus
'Timer Set to run full Model.R Script
Application.Wait Now + TimeValue("00:00:05")
End Sub
Note: j'ai essayé d'utiliser R.exe en lieu et place de Rscript.exe ci-dessus, sans résultat.
- Bien qu'utile, Excel R wiki n'expliquez pas comment... rwiki.sciviews.org/...
- Pas sûr que vous devez échappé barres obliques inverses dans le chemin d'accès au fichier exécutable.
- Le code VBA ci-dessus ne courez le Rscript.exe et R.exe avec le format ci-dessus Tim. Pour un tracé simple au format pdf, il fonctionne très bien...je suis en train de le faire fonctionner sur une plus compliqué fonction multiple bloc de code.
- Peut-être que stackoverflow.com/questions/6788928/... serait travailler pour vous
- Tim: besoin de quelque chose de plus précis...mais merci encore!
Vous devez vous connecter pour publier un commentaire.
Vous voudrez peut-être regarder dans Visual Studio Tools pour Office. Pour Excel 2007, le VSTO lien est ici.
Voici un exemple de R dans Excel (écrite à l'aide de VTSO code). Regardez la section intitulée "Autres Applications". Voici un autre exemple à partir de la même population. Je n'ai aucune idée si ils vendent ces applications, ou si tout est fait sur mesure.
Voici un autre possible solution. Je n'ai pas poursuivi cette méthode parce que mon application a des exigences très spécifiques.
Mon point est, même si vous pouvez mettre quelque chose ensemble à l'aide de VBA, il semble que il ya de meilleurs schémas.
Le message suivant apparaît à travailler:
Assurez-vous que rscript.exe est dans votre CHEMIN d'accès au système
Assurez-vous que votre guillemets dans le chemin d'accès= instruction de travail pour les noms de fichiers. Je l'ai laissé exactement comme celui que j'ai maintenant à courir plutôt que de le rendre générique (et plus de confusion).
Cela a été mis en place à l'aide de code de http://shashiasrblog.blogspot.co.uk/2013/10/vba-front-end-for-r.html, et avec les conseils de MrFlick. De ce que je peux voir il devrait également être assez générique.