Бюджет містить три листи, і фінансовий відділ хоче змінити два клітинки на другому листі. Передача всього робочого зошита агенту ШІ для «оновлення Q3» запрошує його перебудувати всі три. За допомогою локально запущеного сервера GroupDocs.Editor MCP, Claude, Cursor або Copilot витягує лише цей лист у вигляді редагованого HTML, вносить запитані зміни та зберігає його назад у копію оригінального робочого зошита, тому інші листи ніколи не проходять через модель. Слайди працюють так само:
У файлі budget.xlsx, на листі 2 (Q3), встановіть Travel = 12 500 і перейменуйте Training у «Training (external)». Залиште інші листи без змін.
Крок‑за‑кроком версія описана в документації: Як редагувати один лист або слайд і вставити його назад у оригінал.
Чому не передавати агенту весь файл?
Тому що модель не може «вмістити» робочий зошит. Вона може вмістити лише текст. Кожен лист, який ви їй даєте, може бути «допоміжно» переформатований: числа змінюються, формула перетворюється у своє значення, колонка, яку модель не зрозуміла, відкидається. Навіть коли нічого не йде не так, ви не можете це визначити за відповіддю. Вирішення — обмежити область: дайте агенту саме ту частину, яку потрібно змінити, і тримайте решту поза його досяжністю.
HTML — правильний формат для такої частини. Таблиці, стилі, шрифти та зображення зберігаються в ньому, моделі добре його читають і записують, і він легко відображається назад у вихідну структуру. Простий текст втратив би форматування; сирий .xlsx XML — лабіринт, який не слід редагувати агенту.
Круговий процес
budget.xlsx (3 worksheets: Summary, Q3, Q4)
|-- extract_html {"file":{...},"worksheet":2} --> budget_worksheet2.html
| agent edits the HTML: Travel 9000 -> 12500,
| "Training" -> "Training (external)"
'-- save_from_html {"htmlFile":{"filePath":"budget_worksheet2.html"},
"format":"xlsx",
"sourceFile":{"filePath":"budget.xlsx"},
"worksheet":2}
--> budget-q3-revised.xlsx : worksheet 2 replaced, 1 and 3 untouched
evaluation mode: worksheets/slides 1-2 can be edited; the server refuses 3+
Що повернув сервер
Captured from GroupDocs.Editor.Mcp 26.10.0 against a synthetic budget:
-> extract_html {"file":{"filePath":"budget.xlsx"},"worksheet":2}
<- Extracted worksheet 2 of 3 of 'budget.xlsx' as editable HTML
Saved to: …/budget_worksheet2.html
Next: edit the saved .html and call save_from_html to write it back
as DOCX, XLSX, PPTX, PDF or another format.
Preview (plain text): ... Cost centre Planned (EUR) Owner Hosting
57600 IT Support 14400 IT Travel 9000 Sales Training 6000 HR
-> save_from_html {"htmlFile":{"filePath":"budget_worksheet2.html"},
"format":"xlsx","sourceFile":{"filePath":"budget.xlsx"},
"worksheet":2,"outputName":"budget-q3-revised.xlsx"}
<- Saved 'budget_worksheet2.html' into a copy of 'budget.xlsx',
replacing worksheet 2 of 3 (XLSX)
Saved to: …/budget-q3-revised.xlsx
Відкриття результату підтверджує область: у Q3 Travel = 12500, а рядок читається «Training (external)»; Hosting і Support залишились без змін; Summary і Q4 залишились як раніше. Оригінальний budget.xlsx не був змінений.
Інструменти працюють з листами та слайдами за номером, а не за назвою; get_document_info повертає їх кількість, тому в підказці вказано «worksheet 2 (Q3)». Відповідь на витяг містить попередній перегляд у вигляді простого тексту, щоб агент міг переконатися, що це правильний лист, перш ніж щось редагувати, і рядок «Next:», який підказує, який виклик слідує далі. Агентам це добре зрозуміло. Для слайду попередній перегляд може починатися з тексту заповнювача майстра («Click to edit Master title style»), тому агент має перевіряти сам HTML.
Слайди та одне правило для презентацій
Ту ж саму пару можна застосувати до колоди: extract_html з "slide": 2, редагування, save_from_html з "slide": 2 і оригінальним sourceFile. У нашому запуску слайд 2 з трислайдової презентації вийшов у вигляді HTML, «12 percent» стало «14 percent», і файл повернувся як review-revised.pptx зі слайдами 1 і 3 без змін.
Для PowerPoint sourceFile обов’язковий. Сам HTML не містить майстра слайдів, і сервер повідомляє про це, а не створює пошкоджену колоду:
-> save_from_html {"htmlFile":{"filePath":"review_slide2.html"},
"format":"pptx"}
<- Save from HTML failed for 'review_slide2.html' (-> pptx): 'pptx' output
cannot be created from HTML alone; pass the original document as
'sourceFile'.
Повідомлення називає відсутній аргумент, і агент сам виправляє виклик.
Коли круговий процес кращий за пошук‑і‑заміну
replace_text — коротший шлях для окремого слова чи імені. Круговий процес підходить для всього іншого: зміна кількох клітинок одночасно, перефразування мітки разом з числом, реорганізація таблиці на слайді або фрази, яку replace_text не бачить, бо вона розбита на два форматованих фрагменти. Це також спосіб, яким агент читає частину перед тим, як вирішити, що змінювати.
Читання перед записом
Перша половина кругового процесу корисна сама по собі. Агент, якому задали питання «яке планове значення travel у Q3 і хто його відповідає?», може витягнути лист Q3 і відповісти, використовуючи HTML, не торкаючись файлу, а агент, який збирається редагувати, має спочатку саме це зробити: прочитати частину, зазначити, яку зміну планує внести, а потім записати. Додайте цей порядок у інструкції проєкту, щоб він став стандартом:
To change a worksheet or slide, use the groupdocs-editor MCP server:
extract_html for that one part, edit the HTML, save_from_html with the
original as sourceFile and the same worksheet/slide number. Never rebuild
the whole workbook or deck. Say which cells or text you changed.
Останній рядок найважливіший. «Я змінив Travel з 9000 на 12500 і перейменував Training у Q3» — це відповідь, яку рецензент може перевірити проти файлу за кілька секунд.
Чесні обмеження
- У режимі оцінки можна редагувати лише перші два листи або слайди, а сервер відхиляє третій з причиною: «Evaluation mode edits only the first 2 visible worksheets of a workbook; worksheet 3 is beyond them.»
- Незареєстровані збереження — це чернетки: відредагований лист отримує рядок‑банер зверху, а робочий зошит — додатковий лист «Evaluation Warning».
- Витягнутий HTML незареєстрованого запуску починається тим самим рядком оцінки (це видно у попередньому перегляді), тому агент має редагувати клітинки, а не цей рядок.
- Номери листів і слайдів нумеруються з 1, приховані також враховуються. Прихований слайд потребує
showHidden: true; прихований лист відхиляється незалежно відshowHidden, тому спочатку розкрийте його у зошиті.
FAQ
Чи змінює редагування одного листа інші?
Ні. Відредагований HTML замінює лише вказаний лист у копії оригіналу; решта копіюється з вихідного файлу.
Чи можна це робити зі слайдами PowerPoint?
Так, використовуючи "slide" замість "worksheet" і передаючи оригінал як sourceFile, що вимагає вихід PowerPoint.
Куди потрапляє результат?
У новий файл у папці сховища, у нашому випадку budget-q3-revised.xlsx, бо ми вказали outputName; оригінал залишається незмінним.
Поглиблене вивчення
- Документація, канонічний посібник: Як редагувати один лист або слайд і вставити його назад у оригінал
- Центр документації: GroupDocs.Editor MCP Server
- GroupDocs.Editor MCP product page — встановлення в один клік для VS Code і Cursor, конфігурації для будь‑якого іншого клієнта
- Почніть тут: Чому агент ШІ не повинен переписувати ваш документ, щоб змінити три слова
- Пов’язано: Перейменування сторони у 40 контрактах без порушення форматування
- Пов’язано: Заповнення Word‑форм зі спредшиту за допомогою агента ШІ, локально
- Пов’язано: Редагування PDF за допомогою агента ШІ? Спочатку конвертуйте у Word, локально
- На‑місці та модель безпеки: 3 архітектури для AI‑обробки документів, і та, що тримає файли всередині вашої мережі
- Питання: GroupDocs Editor forum
- Джерело: GroupDocs.Editor.Mcp on GitHub · NuGet package