2012-07-22 13 views
10

से आर स्क्रिप्ट चलाना वीबीए से आर स्क्रिप्ट कैसे चला सकता है? मान लें कि मेरे पास सी: \ XXX \ testR.Rवीबीए

के रूप में संग्रहीत एक आर स्क्रिप्ट है, मैंने शैल का उपयोग करने की कोशिश की, लेकिन काफी सफल नहीं।

उत्तर

18
Public Sub RunRTest() 
    Shell ("Rscript test.r") 
End Sub 
+0

सरल और बढ़िया, बहुत बहुत धन्यवाद! – Joyce

7

नोट अपने फ़ाइल स्थानों से सावधान रहें और अधिक स्पष्ट शेल मंद विवरणों की आवश्यकता हो सकती है .... उदा। अपने VB में इन पंक्तियों के साथ बदलें

Dim shell As Object 
Set shell = VBA.CreateObject("WScript.Shell") 
Dim waitTillComplete As Boolean: waitTillComplete = True 
Dim style As Integer: style = 1 
Dim errorCode As Integer 
Dim path As String 

path = """" & Cells.Range("RhomeDir") & """ """ & Cells.Range("MyRscript") & """" 

errorCode = shell.Run(path, style, waitTillComplete) 

जहां एक्सेल में नाम संदर्भ के साथ एक सेल RhomeDir पाठ शामिल

सी: \ Program Files \ r \ आर 3.2.3 \ बिन \ 64 \ rscript और

MyRscript पाठ होता है "C: /Documents/Rworkings/Rscripttest.s"

यूनिक्स आर बैकस्लैश और .s या .R पोस्टफ़िक्स टिप्पण और वीबी की जगह "" के साथ "पथ अभिव्यक्ति में डबल कोष्ठक देने के लिए (प्लस स्ट्रिंग को इंगित करने के लिए आगे के ब्रैकेट्स)। रिक्त स्थान रखने के लिए भी एक अच्छा विचार नहीं है आपके फ़ाइल नाम में।

ऊपर शेल कमांड का पूर्ण मंद वाक्यविन्यास वीबीए खोल की खोज करके पाया गया था।