Opret et tilføjelsesprogram til Office Det er blevet en meget effektiv måde at udvide Word, Excel, Outlook, PowerPoint og andre applikationer. Microsoft 365 uden at skulle udvikle traditionelle desktop-tilføjelsesprogrammer. Disse nye tilføjelsesprogrammer er baseret på standardwebteknologier og JavaScript API'en til Office, hvilket muliggør oprettelse af moderne, sikre og brugervenlige oplevelser på tværs af organisationen.
I de følgende linjer finder du en meget komplet guide om udviklingsværktøjer, manifesttyper, tilgængelige API'er og implementeringsmulighederintegrering af officiel Microsoft-dokumentation. Ideen er, at du kan gå fra bunden til at have et fungerende tilføjelsesprogram, forstå hvad hver del gør, og hvilke tekniske beslutninger du skal træffe i hvert trin.
Hvad er et moderne Office-tilføjelsesprogram, og hvordan er det struktureret?
Moderne Office-tilføjelsesprogrammer De bruger Office-tilføjelsesplatformen, som er fælles for Word, Excel, PowerPoint, OneNote, Outlook og Project, på desktop, web og i nogle tilfælde mobil. De deler alle den samme grundlæggende arkitektur, der består af to klart adskilte dele.
Det første stykke er komplementets manifestDenne fil fungerer som tilføjelsesprogrammets "identitetskort". Den deklarerer metadataene (ID, navn, version, sprog), hvilke Office-programmer den kan bruges med, hvilke tilladelser den har brug for, hvilke kommandoer den tilføjer til båndet, hvilke ikoner den bruger, hvor webapplikationen hostes, og i hvilke sammenhænge den skal aktiveres (f.eks. i Outlook kun for beskeder eller aftaler, der opfylder bestemte regler).
Det andet stykke er Web-ansøgning Denne applikation leverer brugergrænsefladen og forretningslogikken. Den består af HTML, CSS og JavaScript (eller TypeScript) og kører i en Office HTML-container (opgaverude, indholdstilføjelsesprogram eller dialogboks). Derfra bruger den office.js-biblioteket til at læse og skrive til dokumentet, kalde eksterne tjenester, håndtere godkendelse, vise dialogbokse og udføre andre typiske opgaver i en moderne webapp.

Værktøjer til at oprette Office-tilføjelsesprogrammer
Der er ikke én måde at starte et tilføjelsesprojekt på. Microsoft tilbyder adskillige officielle værktøjerDisse værktøjer henvender sig til forskellige brugerprofiler: fra dem, der foretrækker Visual Studio-skabeloner, til dem, der arbejder dagligt med Node.js og Visual Studio Code. Der findes også tredjepartsværktøjer eller mere specialiserede værktøjer, såsom UI-editorer til VBA.
Yeoman-generator til Office-tilføjelsesprogrammer
Yeoman-generatoren til Office er sandsynligvis den mest fleksible mulighed for webudviklere. Det giver dig mulighed for at oprette Node.js-baserede projekter, som du kan redigere med Visual Studio Code eller din foretrukne udgiver. Guiden guider dig gennem en række spørgsmål for at vælge typen af tilføjelsesprogram (opgaverude, indholdstilføjelsesprogram, brugerdefinerede funktioner, Outlook osv.) og målprogrammet.
Med denne generator kan du oprette projekter til Excel, OneNote, Outlook, PowerPoint, Project, Word og brugerdefinerede Excel-funktioner. Derudover lader den dig vælge mellem en simpel stak med HTML, CSS og JavaScript/TypeScript eller en React-baseret arkitektur, også i JavaScript eller TypeScript, hvor hele projektstrukturen allerede er forberedt.
Visual Studio til Office-projekter
Hvis du bevæger dig mere komfortabelt i .NET-miljøerVisual Studio indeholder specifikke skabeloner til Office-tilføjelsesprogrammer. Disse skabeloner dækker primært Excel, Outlook, Word og PowerPoint og skaber en komplet løsning, der inkluderer tilføjelsesmanifestet, webappen og eventuelt tilhørende backend-projekter.
Visual Studio-projektet Det er også baseret på HTML, CSS og JavaScript, men integrerer med det klassiske Microsoft-økosystem.Integreret debugging, publicering, pakning osv. Det er et godt valg, når du allerede arbejder med virksomhedsløsninger i Visual Studio og ønsker at holde alt centraliseret i det samme IDE.
Microsoft 365 Agents Toolkit og Office-tilføjelsesprogrammer Udviklerpakke
Microsoft 365 Agents-værktøjssæt Det er designet til at gå ud over traditionelle tilføjelsesprogrammer og skabe stort set alle typer udvidelser til Microsoft 365-økosystemet ved at kombinere bots, Teams-udvidelser og tilføjelsesprogrammer. Med dette værktøj kan du generere Office-tilføjelsesprojekter, der passer ind i bredere Microsoft 365-applikationer.
Udviklersæt til Office-tilføjelser Det er en Visual Studio Code-udvidelse, der i høj grad forenkler dagligdagen. Fra VS Code kan du oprette nye tilføjelsesprojekter, indlæse testklare kodeeksempler og administrere hele udviklingslivscyklussen uden at forlade editoren. Udvidelsen er designet til at fungere med både samlede manifester og manifester kun for tilføjelser.
Manifestet: Kernen i tilføjelseskonfigurationen
Hvert Office-tilføjelsesprogram er beskrevet af en manifestfil Dette fortæller applikationer, hvordan de skal indlæse det, hvilke grænsefladeindstillinger der skal vises, og hvilke tilladelser der skal kræves. Der er to primære manifestskabeloner, og valget mellem dem bestemmer, hvordan du kan integrere dit tilføjelsesprogram med andre Microsoft 365-udvidelser.
Manifesttyper: kun tillæg og samlet manifest
- Manifest af kun komplement. Det er det klassiske format til produktions-Office-tilføjelsesprogrammer i Excel, OneNote, Outlook, PowerPoint, Project og Word. Det er skrevet i XML og fokuserer udelukkende på at beskrive tilføjelsesprogrammet uden at blande det med andre typer applikationer.
- Ensartet manifest for Microsoft 365. Udviklingen af manifestmodellen i JSON-format, som historisk set er blevet brugt i Teams-applikationer. Dette format gør det muligt at pakke forskellige typer Microsoft 365-udvidelser – Office-tilføjelsesprogrammer, Teams-udvidelser osv. – i en enkelt applikation.
Konfigurationslogikken er ens i begge tilfældeDu definerer et unikt identifikationsnavn (normalt et GUID), versionen, visningsnavnet, beskrivelsen, understøttede sprog, ikoner, tilladelsestyper (f.eks. læse- eller læse-/skrivedokumenter) og grænsefladestrukturen (faner, grupper og båndknapper). Du angiver også webapplikationens start-URL og eventuelle yderligere indstillinger, f.eks. tastaturgenveje i Excel eller Word, udløserregler i Outlook eller dimensionerne for paneler og indholdsudvidelser.
Nøgleelementer erklæret i manifestet
Addition grundlæggende metadataManifestet skal omhyggeligt beskrive, hvordan tilføjelsesprogrammet integreres i Office-oplevelsen. Dette inkluderer brandingbilleder og ikoner for båndkommandoer, som skal hostes på en server, der tillader caching (HTTP-headere med Cache-Control: no-cache eller lignende til produktion).
Et andet kritisk aspekt er sikkerhedAlle URL'er, der peger på webapplikationen eller tilføjelsesressourcerne, skal bruge HTTPS. Selvom nogle udviklingsscenarier tillader HTTP- eller selvsignerede certifikater, er SSL obligatorisk for at undgå advarsler om blandet indhold og sikre databeskyttelse under overførsel, hvis du vil køre tilføjelsesprogrammet i Office på internettet eller udgive det på Microsoft Marketplace.
Hvis du planlægger at distribuere dit tilføjelsesprogram via Microsoft Marketplace, skal manifestet indeholde: Ud over det unikke GUID, en tilgængelig og gyldig URL til teknisk support. Microsoft anvender en række valideringsretningslinjer, hvor konsistensen af manifestdataene, tilføjelsesprogrammets funktionsmåde og overholdelse af sikkerheds- og brugeroplevelseskrav gennemgås.
Tilladte domæner og oprindelser for Office.js
Manifestet styrer også hvilke domæner der kan navigeres i plugin-paneletI Office på internettet og det nye Outlook til Windows kan opgaveruden indlæse næsten enhver URL. I desktopprogrammer er funktionsmåden dog strengere: Hvis tilføjelsesprogrammet forsøger at navigere til et andet domæne end hjemmesidedomænet, åbnes URL'en uden for programmet i et separat browservindue.
For at undgå det eksterne spring på skrivebordetDu kan eksplicit angive hvert ekstra domæne, du ønsker skal vises i tilføjelsesvinduet i manifestet. Hvis målet er angivet, åbnes det i panelet i både Office-skrivebordet og Office på internettet. Ellers åbnes det i en ekstern browser på skrivebordet.

Interaktion med dokumenter ved hjælp af Office JavaScript API'en
Tilføjelsesprogrammets webapplikation kommunikerer med Office-dokumentet. (eller med beskeden i tilfælde af Outlook) via Office JavaScript API-biblioteket, der er tilgængeligt via Microsofts officielle CDN på https://appsforoffice.microsoft.com/lib/1/hosted/office.jsHenvis blot til dette script i afsnittet <head> fra siden for at kunne bruge de tilgængelige typer og metoder.
Når biblioteket er indlæst, har du adgang til to komplementære API-modeller:
- Applikationsspecifikke API'er.
- Almindelige API'er.
Hver model er designet til at dække forskellige scenarier, selvom de kan kombineres i det samme tilbehør afhængigt af behovet.
Applikationsspecifikke API'er
Applikationsspecifikke API'er leverer stærkt typede objekter Disse repræsenterer native enheder i det specifikke Office-program. For eksempel har du i Excel objekter til regneark, områder, tabeller og diagrammer, som giver dig mulighed for at manipulere data på en struktureret og effektiv måde.
Denne model er baseret på batchoperationerDu kæder handlinger sammen i en kontekst, og når du er klar, synkroniserer du ændringerne med Office. Denne arbejdsmetode reducerer antallet af ture mellem tilføjelsesprogrammet og programmet, hvilket forbedrer ydeevnen betydeligt, især i Office på internettet.
Fælles API'er til delte funktioner
Almindelige API'er De fokuserer på tværgående funktioner, der findes i adskillige applikationer: grænsefladeelementer, dialogbokse, klientindstillinger osv. Denne model bruger callbacks i stedet for promises, og hvert kald udfører efter design en enkelt handling mod applikationen.
Med almindelige API'er kan du f.eks. vise en pop op-dialogboks, administrere konfigurationen af et tilføjelsesprogram på forskellige værter eller få adgang til bestemte funktioner i Outlook, PowerPoint eller Project, der endnu ikke er dækket af applikationsspecifikke API'er, afhængigt af brugsscenariet.
Kravsæt og kompatibilitet på tværs af platforme
API-kompatibilitet er organiseret i kravsætDisse grupperer specifikke API-medlemmer under et versionsnavn. Der er applikationsspecifikke kravsæt, f.eks. ExcelApi 1.7og andre delte, såsom DialogApi 1.1, som fungerer, hvor dialogboksfunktionalitet understøttes.
Tilføjelsesprogrammet kan kontrollere under kørsel, om det Office-program, det kører under, opfylder de nødvendige krav. Dette giver dig mulighed for at tilpasse oplevelsen eller deaktivere avancerede funktioner, når værten ikke opfylder minimumskravene, i stedet for at forårsage uventede fejl.
Udforsk API'en med Script Lab
Script Lab er en gratis tilføjelse Det fungerer som et testområde for Office JavaScript API'en. Det installeres fra Microsoft Marketplace og kører i programmer som Excel eller Word, så du kan skrive og udføre kodestykker i realtid på det aktuelle dokument.
I Script Lab har du adgang til en bibliotek med brugsklare eksempler, der demonstrerer forskellige API-funktionerDu kan bruge disse kodestykker som grundlag for din egen kode, ændre dem og øjeblikkeligt se resultatet i dokumentet, hvilket i høj grad fremskynder prototype- og testfasen af funktionaliteter, før du integrerer dem i dit endelige plugin.

Sådan udvider du Office-brugergrænsefladen
En af de store fordele ved tilføjelser er, at de giver mulighed for integrer funktionaliteten direkte i Office-grænsefladenså brugeren ikke føler, at de "forlader" applikationen. Dette opnås ved at kombinere plugin-kommandoer og HTML-containere såsom opgavepaneler, indholdsplugins og dialogbokse.
- Tilføjelseskommandoer De bruges til at tilføje brugerdefinerede faner, nye grupper og yderligere knapper eller menuer til Office-båndet.
- HTML-containere (opgaveruder, indholdstilføjelsesprogrammer og dialogbokse) fungerer som en overflade, hvorpå tilføjelsesprogrammets egen grænseflade kan vises.
I et typisk scenarie har du muligvis en kommando, der tilføjer en gruppe med knappen "Analyser data" i Excel. Når der trykkes på knappen, åbnes en opgaverude til højre med din webapp, som analyserer det valgte område, kalder en maskinlæringstjeneste og returnerer resultaterne ved at fremhæve celler eller oprette diagrammer ved hjælp af Excels specifikke API.
Opret et tilføjelsesprogram til opgaveruden med Yeoman (Word-eksempel)
At omsætte alle disse koncepter til praksisDet er nyttigt at se, hvordan man i praksis bygger et tilføjelsesprogram til opgavepaneler ved hjælp af Yeomans generator, både til Word og Outlook. Selvom grænsefladedetaljerne varierer mellem programmer, er projektstrukturen og arbejdsgangen meget ens.
Forudsætninger for udviklingsmiljøet
Før projektet genereresDu skal have den nyeste LTS-version af Node.js installeret, som kan downloades fra den officielle hjemmeside. Når den er installeret, skal du installere Yeoman og Office-generatoren globalt ved hjælp af kommandoen npm install -g yo generator-officeEndelig skal du sørge for, at du har Office knyttet til et Microsoft 365-abonnement, der inkluderer Office på nettet, da du vil teste tilføjelsesprogrammet på både computer og i browser.
Oprettelse af et Word-tilføjelsesprogram med en opgaverude
Det første trin er beslutte typen af manifest som du vil bruge, afhængigt af om du har til hensigt at kombinere dit tilføjelsesprogram med andre udvidelser i en enkelt app eller ej. Når du har truffet din beslutning, kører du yo office i arbejdsmappen.
Under interaktiv assistentDu kan f.eks. vælge en projekttype, tildele et navn som "Mit Office-tilføjelsesprogram" og vælge Word som målklientprogrammet. Når det er færdigt, opretter generatoren projektmappen, installerer Node-afhængighederne og gør alt klar til brug.
I løsningen finder du manifestfilen (manifest.json o manifest.xml) i roden, som definerer plugin-konfigurationen; filen ./src/taskpane/taskpane.html med opgaverudens markup; CSS'en i ./src/taskpane/taskpane.css; og koden, der kalder Office API'en i ./src/taskpane/taskpane.ts o .jsafhængigt af om du har valgt TypeScript eller JavaScript.
Sådan tester du tilføjelsesprogrammet i Word på skrivebordetDu skal blot navigere til projektets rodmappe (cd "My Office Add-in"og udføre npm startDenne kommando starter den lokale webserver og starter Word med tilføjelsesprogrammet allerede indlæst i sideloading-tilstand. Hvis du foretrækker at prøve det i Word på nettet, kan du bruge en kommando som denne: npm run start -- web --document {url}, og erstatter URL'en med URL'en for et dokument, der er gemt i OneDrive eller SharePoint.
Udviklingsserver og afhængighedsstyring
Under udviklingen er det almindeligt at npm install Det kan fejle under det automatiske trin, som Yeoman udfører, især hvis der er konflikter med afhængighedsversioner. I disse tilfælde skal du blot gå ind i projektmappen og starte npm install manuelt for at løse det.
Hvis der vises advarsler om forældede afhængighederDu kan stole på værktøjet npm-check-updates, installerer den med npm i -g npm-check-updates, løber ncu -u at opdatere versionsintervaller i package.json og afslutter processen med en ny npm installMange af disse advarsler er ikke kritiske, men det er god praksis at gennemgå dem med jævne mellemrum for at holde projektet sundt.
For at stoppe udviklingsserveren og afinstaller plugin'et i sideloading-tilstand, kan du køre npm stop i rodmappen. Hvis du tidligere har uploadet tilføjelsesprogrammet manuelt (f.eks. ved at uploade manifestet til Office på internettet), skal du også fjerne det manuelt fra den tilsvarende administrationsgrænseflade.
Fra den grundlæggende struktur af et tilføjelsesprogram og udviklingsværktøjer (Yeoman, Visual Studio, Agents Toolkit, Script Lab) til manifestets rolle, JavaScript API'er, sikkerhedskontroller og implementeringsmuligheder (lokal, Marketplace, centraliseret implementering eller via udbydere som Qlik), har du en nogenlunde komplet kort at beslutte, hvilken type tilføjelsesprogram du har brug for, hvordan du bygger det, og hvordan du stiller det til rådighed for dine brugere uden tekniske overraskelser.