title: How to call a macro from another module but run in another sheet
body: <p>I have a macro that does some calculations, which is located in a module on "Optimum" sheet (I do not want the user to access this sheet, btw). I have 5 other sheets let's say called "p1" "p2" "p3" "p4" "p5" where the user is able to input data.</p>
  
  <p>Starting with "p1". User inputs the data and the data copies over to "Optimum" Sheet and the calculations are done.</p>
  
  <p>The problem is that the table of results and calculations of "Optimum" are being show in "p1" instead of not showing anything at all.</p>
  
  <p>I'm trying Application.Run and Call but I do understand this just calls a macro to the active worksheet you are in, hence my problem.</p>
  
  <pre><code>Sub Macroforp1()
  
  Sheets("p1").Range("TablePV1").Copy Destination:=Sheets("Optimum").Range("TableOptimum")
  '
  '
  Call Optimum_module.TestCalc
  '
  End Sub
  </code></pre>
  
  <p>I expect the code to just grab the input on whichever sheet I'm in, run the calculations on "Optimum" and that's it. (Later I will grab a certain row of results to paste in the sheets I mentioned).</p>