title: Call and run a jupyter notebook from Excel using xlwings?
body: <p>In the company I work at, we have just started experimenting with the migration of several computation-heavy projects from Excel to Python. In this process, we have discovered <code>xlwings</code> and the power it can bring to the integration of Excel and Python. </p>
  
  <p>Several of our projects include reading in input data from Excel worksheets, doing some background calculations, and then outputting the results to different sheets in the same workbook. From the 
  <a href="https://www.xlwings.org/examples" rel="nofollow noreferrer">example projects</a> on the <code>xlwings</code> website, I know it's possible to replace VBA macros (which we used so far) with Python, while keeping the Excel front-end.</p>
  
  <p>However, my co-workers, who are primarily financial experts and not programmers, really like the interactivity of <code>jupyter</code> notebooks and would appreciate it if they could work in them during the modeling phase of the projects (rather than switching to PyCharm all of a sudden).</p>
  
  <p>All in all, the ideal workflow would look like this for us:<br>
  Inputting from Excel sheets, doing some modeling and model calibration in Python through <code>jupyter</code> notebooks, running some tests, then if we're at a final stage, then outputting to Excel. A key constraint is that the end-users of our models are used to the VBA-like functionality (eg. <em>Run</em> buttons in Excel).</p>
  
  <p>So my question is the following:<br>
  <strong>Is it possible to call and run a <code>jupyter</code> notebook from Excel as it was a <code>.py</code> file (ie. through the <code>RunPython</code> function)?</strong> This way, I assume that we could avoid the intermediate step of "converting" the models from <code>.ipynb</code> to <code>.py</code>, not to mention having two code versions of the same model.</p>
  
  <p>Thank you for any suggestions!</p>