univer
フレームワークdream-num/univer
オープンソースのオフィス SDK。スプレッドシート、ドキュメント、スライド、AI エージェントとの統合をサポート。
概要
Univer はオープンソースのオフィス SDK で、スプレッドシート、ドキュメント、スライドなどの機能を提供します。プラグイン化アーキテクチャを採用し、Canvas レンダリングエンジンと数式エンジンを内蔵しており、統一された Facade API はブラウザと Node.js の両方で動作します。製品への組み込みや、AI エージェントへのヘッドレスなドキュメント処理の提供に適しています。
README プレビュー
\n\n\n\n**The Office Harness for AI Agents**\n\nSpreadsheets · Documents · Presentations · Bases · Boards · PDFs (coming soon)\n\nHigh-performance, fully customizable Office SDK\n\nBuild embeddable productivity experiences with a plugin architecture, Canvas-based rendering,\na formula engine, and one Facade API that works in the browser and on Node.js.\n\nEnglish | [简体中文](./docs/readme/zh-CN.md) | [繁體中文](./docs/readme/zh-TW.md) | [日本語](./docs/readme/ja-JP.md) | [한국어](./docs/readme/ko-KR.md) | [Español](./docs/readme/es-ES.md)\n\n[🌐 Website](https://univer.ai/) | [📖 Documentation](https://docs.univer.ai) | [✨ Showcase](https://docs.univer.ai/showcase) | [📘 API Reference](https://docs.univer.ai/reference/classes/univer) | [📝 Blog](https://docs.univer.ai/blog)\n\n[](https://github.com/dream-num/univer/releases)\n[](./LICENSE)\n[](https://github.com/dream-num/univer/actions/workflows/build-packages.yml)\n[](https://www.codefactor.io/repository/github/dream-num/univer/overview/dev)\n[](https://codecov.io/gh/dream-num/univer)\n\n[](https://github.com/dream-num/univer/stargazers)\n[](https://github.com/dream-num/univer/graphs/contributors)\n[](https://github.com/dream-num/univer/issues)\n[](https://github.com/dream-num/univer/commits/dev/)\n\n[](https://discord.gg/z3NKNT6D2f)\n[](https://twitter.com/univerhq)\n[](https://opencollective.com/univer)\n\n[](https://trendshift.io/repositories/4376)\n\n\n\n## ✨ What is Univer?\n\nUniver is an open-source SDK for creating office applications inside your own product. It gives you the building blocks for spreadsheet, document, and presentation experiences without forcing you into a hosted app or a fixed UI.\n\nUse Univer when you need to:\n\n- Embed spreadsheet or document editing into a SaaS product, internal tool, BI workflow, or AI application.\n- Run workbook/document processing on the server with the same architecture used in the browser.\n- Compose only the features you need through plugins or start quickly with presets.\
FAQ (1)
トラブル対応Univer(headless/Node)でシート名を変更した後、定義名を使用する数式が #NAME? を返すのはなぜですか?
これは @univerjs/engine-formula / @univerjs/sheets-formula 1.0.3 における、シート名の状態が古いまま残ってしまう(stale)バグです。sheet.setName() を呼び出した後、定義名の formulaOrRefString は新しいシート名(例: Rates2!$A$1)に正しく書き換えられますが、数式エンジンは依然として古いシート名のマッピングに対してその名前を解決するため、その名前を参照しているすべての数式(例: =Q+1)は次の計算時に #NAME? を返します。同じ文字列で setRef() を呼び出しても修復されず、定義名を削除してから再挿入すると、代わりに #REF! が返されます。回避策: シート名を変更した後、ワークブックのスナップショットを保存し(wb.save())、そのスナップショットを新しい Univer インスタンスに読み込んでください。そうすると、その名前は正しいシート名の状態に対して解決され、数式は再び正常に計算されるようになります。