テーブルにデータを書き込むためにoffice js APIを使用しています。コードは2016年11月の終わりまでオンラインでExcelにうまくいき、それ以降は動作しなくなりました。Office JS APIがテーブルに10000未満のセル値を書き込めない
コードだけテーブルに値を設定し、それを書き込みしようとしている細胞の総数は10,000未満であり、値を設定する方法がある。
dataTable.getHeaderRowRange().values = [data.headerValues];
dataTable.getDataBodyRange().formulas = data.values;
dataTable.getTotalRowRange().formulas = [data.totalRow];
再現する完全なコード
負荷データBをクリック<?xml version="1.0" encoding="UTF-8"?>
<OfficeApp xmlns="http://schemas.microsoft.com/office/appforoffice/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="TaskPaneApp">
<Id>5B1D06A5-5F14-4B8F-B07D-E698084397F6</Id>
<Version>1.0.0.0</Version>
<ProviderName>Provider</ProviderName>
<DefaultLocale>en-US</DefaultLocale>
<DisplayName DefaultValue="Testing Office API" />
<Description DefaultValue="Testing Office API"/>
<Hosts>
<Host Name="Workbook" />
</Hosts>
<DefaultSettings>
<SourceLocation DefaultValue="https://renil-abdulkader.github.io/office-js-api-testing/" />
</DefaultSettings>
<Permissions>ReadWriteDocument</Permissions>
</OfficeApp>
を:問題はGitHub
でホストされているあなたは、以下のマニフェストを使用して、オフィスオンラインでコードを実行することができますuttonはデータの一部のみを書き出し、コンソールにエラー:{"name":"OfficeExtension.Error","code":"GeneralException","message":"There was an internal error while processing the request.","traceMessages":[],"debugInfo":{"errorLocation":"Range.formulas"}}
を表示します。
これが起こったら、他の問題は、次のとおりです。
- はバインディングがバインディングが失敗したら
- を失敗し、タブを削除するExcelシート上の複数のユーザーが存在する場合
- を失敗を開始します追加します、ユーザーは
You are no longer connected to the server
エラーメッセージが表示されます。
更新1:私たちが書いている68行と、1行に136列あります。最初の40行と最後の30行を書き込むようにコードを更新しました。そのコードは正常に動作しますが、68行全体では動作しません。したがって、データそのものに問題はないはずです。
Excel用のストレージの制限に達している可能性があります。マニフェストによって提案されたサイズのユーザーの場合は、データベースを使用してデータを格納する必要があります。 [Azure SQLデータベースへの接続/ Office 365からのSQL Server](http://stackoverflow.com/a/35387508/1115360)は、ソリューションにつながる可能性があります。 –
ストレージ制限はどこで指定されていますか? – renil
このデータは確かに10MBの制限に達しません。言及したように、これは以前よりうまく機能していました。 – renil