Комментарий Сивкана верен.Когда надстройка загружается, функциональность API не доступна сразу (и часто даже не определяется в переменных JS), вам нужно подождать, пока не будет вызван Office.onReady
(или его более старый эквивалент, Office.initialize
).
В вашем случае это должно работать:
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js></script>
<script src="https://appsforoffice.microsoft.com/lib/1/hosted/Office.js" type="text/javascript"></script>
<script>
Office.onReady(() => {
Excel.run(function (context) {
console.log('Your code goes here.');
}).catch(function (error) {
console.log('error: ' + error);
});
});
</script>
</head>
<body>
</body>