Rozpočet má tři listy a finance chtějí změnit dvě buňky na druhém. Předání celého sešitu AI agentovi k „aktualizaci Q3“ ho vyzve k přestavbě všech tří. S lokálně běžícím serverem GroupDocs.Editor MCP, Claude, Cursor nebo Copilot extrahuje jen tento list jako editovatelný HTML, provede požadované změny a uloží jej zpět do kopie původního sešitu, takže ostatní listy nikdy neprojdou modelem. Snímky fungují stejně:

V souboru budget.xlsx, na listu 2 (Q3), nastavte Travel na 12 500 a přejmenujte Training na „Training (external)“. Ostatní listy nechte nedotčené.

Podrobná verze krok za krokem je v dokumentaci: Jak upravit jeden list nebo snímek a vložit jej zpět do originálu.

Proč nepředávat agentovi celý soubor?

Protože model nedokáže uchovat celý sešit. Dokáže uchovat jen text. Každý list, který mu předáte, může „nápomocně“ přepsat: čísla přeformátovat, vzorec převést na jeho hodnotu, sloupec, který nepochopil, vynechat. I když se nic nezdá pokazit, z odpovědi to nelze poznat. Řešením je omezit rozsah: dejte agentovi přesně tu část, kterou má změnit, a ostatní držte mimo jeho dosah.

HTML je pro tuto část správný formát. Tabulky, styly, písma a obrázky v něm přežijí, modely jej dobře čtou i zapisují a lze jej zpětně mapovat na původní strukturu. Prostý text by ztratil formátování; surové XML souboru .xlsx je bludiště, které by žádný agent neměl upravovat.

Cesta tam a zpět

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+

Co server vrátil

Zachyceno z GroupDocs.Editor.Mcp 26.10.0 proti syntetickému rozpočtu:

-> 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

Otevření výsledku potvrzuje omezení: v Q3 je Travel 12500 a řádek zní „Training (external)“; Hosting a Support zůstaly beze změny; Summary a Q4 jsou tak, jak byly. Původní soubor budget.xlsx nebyl upraven.

Nástroje pracují s listy a snímky podle čísla, ne podle názvu; get_document_info vrací počet, což je důvod, proč výzva říká „worksheet 2 (Q3)“. Odpověď na extrakci obsahuje náhled v prostém textu, takže si agent může ověřit, že má správný list, než něco upraví, a řádek „Next:“ mu říká, která volání následují. Agenti tyto nápovědy dobře dodržují. U snímku může náhled začínat textem z místa držitele („Click to edit Master title style“), takže by si agent měl zkontrolovat samotný HTML.

Snímky a jediné pravidlo pro prezentace

Stejný dvojice funguje i na prezentaci: extract_html s "slide": 2, úprava, save_from_html s "slide": 2 a původním souborem jako sourceFile. V našem běhu šel snímek 2 ze tří‑snímkové revizní prezentace jako HTML, „12 percent“ se změnilo na „14 percent“ a výsledek přišel jako review-revised.pptx se zachovanými snímky 1 a 3.

Pro PowerPoint není sourceFile volitelný. HTML samotné neobsahuje master snímku a server to oznámí místo toho, aby vytvořil poškozenou prezentaci:

-> 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'.

Zpráva uvádí chybějící argument, takže si agent opraví volání sám.

Když cesta tam a zpět překoná najít‑a‑nahradit

replace_text je kratší cesta pro jednoslovné nebo jednojmenné změny. Cesta tam a zpět slouží ke všemu ostatnímu: změně několika buněk najednou, přeformulování popisku a čísla dohromady, restrukturalizaci tabulky na snímku nebo frázi, kterou replace_text nevidí, protože je rozdělena mezi dva formátovací úseky. Také to umožňuje agentovi přečíst část před tím, než se rozhodne, co změnit.

Čtení před zápisem

První polovina cesty tam a zpět je užitečná i samostatně. Agent dotázaný „co je naplánováno na cestování v Q3 a kdo to vlastní?“ může extrahovat list Q3 a odpovědět z HTML, aniž by se něčemu dotkl, a agent, který má něco upravit, by měl nejprve udělat právě to: přečíst část, uvést zamýšlenou změnu a pak zapsat. Vložte tento postup do instrukcí projektu, aby se stal výchozím:

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.

Poslední řádek je nejdůležitější. „Změnil jsem Travel z 9000 na 12500 a přejmenoval Training v Q3“ je odpověď, kterou recenzent může během několika sekund ověřit proti souboru.

Upřímná omezení

  • Režim hodnocení upravuje jen první dva listy nebo snímky a server třetí odmítne s důvodem: „Režim hodnocení upravuje jen první 2 viditelné listy sešitu; list 3 je mimo jejich rozsah.“
  • Ukládání bez licence jsou koncepty: upravený list získá v horní části bannerový řádek a sešit získá další list „Evaluation Warning“.
  • Extrahovaný HTML nelicencovaného běhu začíná stejným řádkem hodnocení (náhled výše to ukazuje), takže by si agent měl upravit buňky, ne ten řádek.
  • Čísla listů a snímků jsou číslována od 1, skryté jsou také započítány. Skrytý snímek vyžaduje showHidden: true; skrytý list je odmítnut bez ohledu na nastavení showHidden, takže jej nejprve odhalte v sešitu.

Často kladené otázky

Mění úprava jednoho listu ostatní listy?
Ne. Upravený HTML nahradí jen ten list, který uvedete, v kopii originálu; zbytek je přenesen ze zdrojového souboru.

Mohu to použít i na PowerPoint snímky?
Ano, s "slide" místo "worksheet" a s původním souborem předaným jako sourceFile, což PowerPoint výstup vyžaduje.

Kam výsledek směřuje?
Do nového souboru ve složce úložiště, zde budget-q3-revised.xlsx, protože jsme zadali outputName; originál zůstane nedotčen.

Prohloubení