2017-10-15 8 views
1

J'ai une requête générale sur l'objet de feuille de calcul de Office js. L'objet a une propriété appelée 'id'. Y a-t-il un moyen de s'assurer que chaque fois qu'une feuille particulière est chargée, l'ID généré est toujours le même? Pouvons-nous assigner une valeur fixe à la propriété 'id'?Office js objet Worksheet

Merci d'avance.

Répondre

1

Un ID de feuille de calcul (et tout autre ID dans le modèle API, d'ailleurs) est en lecture seule. Donc vous ne pouvez pas l'assigner. Cependant (comme avec tout autre ID dans le modèle d'API), l'objectif entier d'un ID est qu'il est en fait unique, au moins pour la durée de la session.

Ainsi, les mises en garde sont les suivants:

  • L'unicité est seulement garanti par session Office. En d'autres termes, si l'utilisateur ferme le classeur et le rouvre, les ID peuvent être différents de.
  • Certains ID sont plus forts que d'autres. Généralement, tout ID qui est un GUID sera unique et ne sera jamais réutilisé dans la même session. Cependant, il y a des objets (tables) dont l'ID, pour l'instant, est juste un nombre/stringified-number; dans ce cas, le numéro peut être réutilisé par une autre table si la première est supprimée et qu'une nouvelle est ajoutée. Mais tant que la table est active, son ID ne sera pas réutilisé, au moins pour la session Office actuellement ouverte.
+0

Y at-il une raison pour ne pas avoir un nom de code de feuille de calcul en lecture seule qui persiste entre les sessions (comme VBA)? Le nom de code est unique dans un classeur et un classeur est unique dans une session. –

+0

Je vous suggère de déposer ceci comme un bug/suggestion sur https://github.com/OfficeDev/office-js/issues. C'est certainement un scénario valable, je pense qu'il y avait quelques problèmes techniques à l'époque, mais ils pourraient ne plus être pertinents. Et je pense que le scénario a encore plus de sens dans le cas des API REST. S'il vous plaît poster un lien ici une fois que vous l'avez déposé. –

+0

Classé https://github.com/OfficeDev/office-js/issues/38 –