2017-08-17 3 views
0

J'essaie d'obtenir le fichier SheetName à partir de Office 365 en utilisant VS. suit est le code.Obtention du nom de la feuille dans office.js dans les addins Office

var ctx = new Excel.RequestContext(); 
     workbook = ctx.workbook;    
     var Sheet = workbook.worksheets.getActiveWorksheet(); 
     Sheet.load("name"); 
     var name; 
     ctx.sync().then(function() { 
      name = Sheet.name; 
     }); 

mais je ne suis pas en mesure de frapper à l'intérieur de la fonction ctx.sync(). s'il vous plaît expliquer s'il me manque quelque chose.

Il est également possible de charger un fichier Excel dans un classeur existant en utilisant l'exemple ci-dessus. En chargeant un fichier je veux dire disons que je reçois un fichier Excel d'un service que j'ai besoin d'afficher sur le classeur en cours. comme dans Addin client excel nous pouvons charger un fichier Excel dans l'application

Répondre

1

Voici quelques recommandations:

  • Utilisation Excel.run au lieu de créer manuellement le contexte de la demande. Assurez-vous également que vous incluez la gestion des erreurs (sans logique de gestion des erreurs appropriée, les choses peuvent échouer silencieusement sans que rien n'indique que quelque chose échoue).
  • Assurez-vous d'inclure return avant le context.sync() (c'est-à-dire, return context.sync();).

Voici un extrait de code qui implémente ces recommandations, dans le cadre de votre scénario:

function getActiveWorksheet() { 
    Excel.run(function (context) { 
     var sheet = context.workbook.worksheets.getActiveWorksheet(); 
     sheet.load("name"); 
     return context.sync() 
      .then(function() { 
       console.log("The active worksheet is " + sheet.name); 
      }); 
    }) 
     .catch(function (error) { 
      console.log(error.debugInfo); 
     }); 
} 

En ce qui concerne votre dernière question (» il est également possible de charger un fichier Excel dans le classeur existant à l'aide de exemple ci-dessus ") - Je ne suis pas clair sur ce que vous demandez ici. Pouvez-vous s'il vous plaît mettre à jour votre question avec plus d'informations sur ce que vous voulez réaliser?

+0

Kim brandi merci pour la réponse. En chargeant un fichier je veux dire disons que je reçois un fichier Excel d'un service que j'ai besoin d'afficher sur le classeur en cours. Comme dans Addel client Excel, nous pouvons charger un fichier Excel dans l'application. – Sandy

+0

@Sandy - Puisqu'il s'agit d'une question entièrement différente (sans rapport avec le nom de la feuille), pouvez-vous créer un nouveau post ici sur Stack Overflow pour poser cette question? En créant un post pour chaque question/sujet distinct, vous avez non seulement plus de chances d'obtenir de bons commentaires, mais vous augmentez également la probabilité que d'autres personnes puissent bénéficier des informations à l'avenir. Enfin, si ma réponse ci-dessus répondait suffisamment à la partie principale de cette question ("Obtenir le nom de la feuille dans office.js dans les addins de bureau"), veuillez la marquer comme réponse "Acceptée" (pour que d'autres personnes puissent également bénéficier de cette information) . Merci! –

+0

KIm Brandi vous avez raison..Créer un nouveau poste pour cela – Sandy