There is no "nice" formula for R in terms of the remaining variables, however you can numerically compute R pretty easily using a method called "quadrature", where I'm assuming a solution exists somewhere, and the EMI function constantly increases. Hopefully these are reasonable assumptions. The following VB.NET (sorry, I don't have access to VB6 anymore) code gives R=0.008338... on your input, which agrees with the results of a numerical solver. (You said the answer should be R=10%=0.1, but I don't believe you since plugging this in directly doesn't give equality. Maybe you haven't listed some unit conversion somewhere or your numbers aren't right.)
.
VB Code:
Public Class Form1
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
MessageBox.Show(FindR(3227, 100000, 36))
End Sub
Private Function FindR(EMI As Double, P As Double, N As Double) As Double
'Use "quadrature" to find the solution
Dim MinR As Double
Dim MaxR As Double
Dim MidR As Double
MinR = 0
MaxR = 1
Do Until Math.Abs(MaxR - MinR) < 0.000001
Dim TestVal As Double
MidR = (MaxR + MinR) / 2
TestVal = P * MidR * (1 + MidR) ^ N / ((1 + MidR) ^ N - 1)
If TestVal < EMI Then
MinR = MidR
Else
MaxR = MidR
End If
Loop
Return MidR
End Function
End Class