Obtention des plages à l'aide du flux Atom et du Fragment HTML

Cette rubrique décrit deux façons d'accéder aux plages — flux Atom et un fragment HTML, à l'aide de l'API REST dans Excel Services.

Notes

L’API REST Excel Services s’applique à l’environnement local SharePoint et SharePoint 2016. Pour les comptes Office 365 Éducation, Business et Entreprise, utilisez les API REST Excel qui font partie du point de terminaison Microsoft Graph.

Accès à des plages

L'API REST dans Excel Services prend en charge deux mécanismes pour l'obtention des plages. Le premier est utilisé essentiellement pour permettre aux applications pour atteindre les données brutes d'un classeur, autrement dit, les chiffres bruts ou les valeurs d'un tableur. La seconde consiste à obtenir des fragments HTML à partir de l'intérieur d'un navigateur.

Comme décrit dans la rubrique Détection de l'API REST Excel Services , l'URL de REST à la page modèle utilisant la découverte est :


http://<ServerName>/_vti_bin/ExcelRest.aspx/<DocumentLibrary>/<FileName>/model

Par conséquent, pour un classeur avec le nom de fichiersampleWorkbook.xlsx enregistré dans , voici http://<ServerName>/Docs/Documents/sampleWorkbook.xlsx l’URI de la page de modèle :

http://<ServerName>/_vti_bin/ExcelRest.aspx/Docs/Documents/sampleWorkbook.xlsx/model

En utilisant le mécanisme de découverte décrit dans Détection de l'API REST Excel Services, si vous cliquez sur le Atom de plages sur la page de modèle sur le serveur, ( http:// /_vti_bin/ExcelRest.aspx/Docs/Documents/sampleWorkbook.xlsx/model), il affiche une page qui affiche toutes les plages nommées dans le classeur. La sampleWorkbook.xlsx contient une plage nommée, SampleNamedRange, comme illustré dans la capture d'écran suivante :

Important

[!IMPORTANTE] Vous pouvez également spécifier les plages arbitraires et pas seulement les plages renvoyés par la découverte. Signe deux-points « : » doit être remplacé par « | ». Par exemple, utilisez « A1 | G5 » plutôt que « A1 : G5 ».

Notes

[!REMARQUE] Les caractères tels que « ? » et « # » ne sont pas pris en charge. Pour référencer correctement les noms de feuille qui contiennent des caractères spéciaux, la directive de base est « voir ce que fait le client Excel » lorsque vous référencez une formule à une feuille spéciale des caractères et suivez cet exemple.

Découverte de plage nommée REST Excel Services

Découverte de plage nommée REST Excel Services

Accès à des plages à l'aide d'un Atom flux

Si vous cliquez sur SampleNamedRange dans la page de détection de plage, vous accédez à l'URL suivante :

http://<ServerName>/_vti_bin/ExcelRest.aspx/Docs/Documents/sampleWorkbook.xlsx/model/Ranges('SampleNamedRange')?$format=atom

Notez que, dans Internet Explorer, la page qui en résulte se présente comme une erreur, comme illustré dans la capture d'écran suivante.

Découverte de plage REST Excel Services à l'aide d'Atom

Découverte de plage REST Excel Services à l'aide d'Atom

Internet Explorer ne peut pas afficher une seule entrée que élément de flux Atom. Mais affichant la source de la page suivant illustre le code XML figurant dans l'élément de flux :

<?xml version="1.0" encoding="utf-8"?>
<entry xmlns:x="http://schemas.microsoft.com/office/2008/07/excelservices/rest" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservice" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns="http://www.w3.org/2005/Atom">
  <title type="text">SampleNamedRange</title>
  <id>http://ServerName/_vti_bin/ExcelRest.aspx/Docs/Documents/sampleWorkbook.xlsx/model/Ranges('SampleNamedRange')</id>
  <updated>2010-01-20T21:28:10Z</updated>
  <author>
    <name />
  </author>
  <link rel="self" href="http://ServerName/_vti_bin/ExcelRest.aspx/Docs/Documents/sampleWorkbook.xlsx/model/Ranges('SampleNamedRange')?$format=atom" title="SampleNamedRange" />
  <category term="ExcelServices.Range" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme" />
  <content type="application/xml">
    <x:range name="SampleNamedRange">
      <x:row>
        <x:c>
          <x:fv>Performance</x:fv>
        </x:c>
        <x:c>
          <x:v>26</x:v>
          <x:fv>26</x:fv>
        </x:c>
        <x:c />
      </x:row>
      <x:row>
        <x:c>
          <x:fv>Employment</x:fv>
        </x:c>
        <x:c>
          <x:v>42</x:v>
          <x:fv>42</x:fv>
        </x:c>
        <x:c />
      </x:row>
      <x:row>
        <x:c>
          <x:fv>Earnings And Job Quality</x:fv>
        </x:c>
        <x:c>
          <x:v>22</x:v>
          <x:fv>22</x:fv>
        </x:c>
        <x:c />
      </x:row>
    ... XML truncated for brevity. 
      <x:row>
        <x:c>
          <x:fv>Innovation Assets</x:fv>
        </x:c>
        <x:c>
          <x:v>43</x:v>
          <x:fv>43</x:fv>
        </x:c>
        <x:c />
      </x:row>
      <x:row>
        <x:c />
        <x:c>
          <x:fv>State</x:fv>
        </x:c>
        <x:c />
      </x:row>
    </x:range>
  </content>
</entry>

L'élément de flux contient du code XML qui représente les données à l'intérieur de la plage. Voici les éléments XML d'intérêt :

  • The range element. Represents the container of the returned range.

  • The row element. Represents each row in the range.

  • The cell element. Represents each cell in a row.

  • The formatted value element. Represents the value as it is formatted by Excel. If the value is of type string in the workbook, the formatted value element is the only element under .

  • The value element. Represents a number value. If the value in the cell is a number instead of a string, the value element contains that information.

Utilisation du format XML vous offre un moyen plus simple pour obtenir des données à partir d'une plage Excel afin que vous pouvez l'utiliser dans votre application.

Accès à des plages en utilisant HTML

Si vous examinez l'URL pour accéder à une plage nommée à l'aide de flux Atom, notez que la dernière partie de l'URL contient un paramètre appelé $format, qui est défini sur atom. Ce paramètre peut prendre également la valeur de html. Si vous modifiez la valeur de atom à html, l'URL renvoie un fragment HTML au lieu d'un flux Atom. Vous trouverez ci-dessous un exemple d'URL :


http://<ServerName>/_vti_bin/ExcelRest.aspx/Docs/Documents/sampleWorkbook.xlsx/model/Ranges('SampleNamedRange')?$format=html

Dans Internet Explorer, la page ressemble à la figure suivante.

Notes

[!REMARQUE] Ce code HTML pouvant être consommé directement dans une IFRAME, ou elle peut être utilisée dans JavaScript pour créer une expérience plus transparente.

Découverte de plage REST Excel Services à l'aide de HTML

Voir aussi

Concepts

URI des ressources pour l'API REST Excel Services