2012-07-22 31 views
10

VBA'dan nasıl bir R komut dosyasını çalıştırabilirim? C: \ XXX \ testR.RVBA'dan R komut dosyalarını çalıştırma

olarak saklanan bir R komut dosyası aldığımı varsayalım, Shell'i kullanmayı denedim, ancak oldukça başarılı olmadım.

cevap

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

Basit ve harika, çok teşekkürler! – Joyce

7

Dosya konumlarınıza dikkat edin ve daha açık Shell dim deyimlerine gereksinim duyabilirsiniz .... ör. VB bu hatları ile yerine excel adlı atfen bir hücre RhomeDir metni

C içerir

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) 

: \ Program Files \ R \ R-3.2.3 \ bin \ x64 \ rscript ve

MyRscript metin içerir: (unix R ters eğik ve .s veya .r ekine not "Cı /Documents/Rworkings/Rscripttest.s"

ve VB yol ifade çift parantez vermek "ile"" yerine artı dize belirtmek için daha fazla dış köşeli parantezler. Ayrıca boşluklara sahip olmak iyi bir fikir değildir. dosya adın içinde.

Yukarıdaki kabuk komutunun tam lojik sözdizimi, VBA kabuğu aranarak bulundu.

İlgili konular