J'exporte des données vers Excel via un modèle avec OpenXML en utilisant OpenXML SDK 2.0. Je peux tout exporter vers Excel. Cependant, le modèle a plusieurs feuilles (toutes en réalité) qui ont des couleurs d'arrière-plan (styles) appliquées à la colonne mais pas à la cellule car Excel n'a pas encore de véritable référence à cette cellule. Je remplis des lignes de données avec des données sur ces feuilles et les valeurs sont correctes, mais quand je leur mets le formatage de la cellule, il revient au fond blanc par défaut et ne correspond plus au reste de la feuille.Format de colonne OpenXML Excel?
Comment puis-je faire en sorte que la cellule hérite du style de la colonne dans laquelle elle se trouve? J'ai pensé à essayer de chercher dans la colonne et d'obtenir son style et définir le style de la cellule à cela, mais je ne peux pas trouver comment trouver une colonne par sa référence. Je peux itérer toutes les colonnes dans une feuille, mais ils ne me donnent pas leur référence ...
Voici l'extrait qui insère effectivement la cellule dans une rangée:
Cell newCell = new Cell() { CellReference = cellReference };
if (refCell == null)
{ row.Append(newCell); }
else
{ row.InsertBefore(newCell, refCell); }
refCell est de code précédent et est essentiellement de faire en sorte que les cellules sont énumérées dans le bon ordre que Excel la hauteur d'un ajustement si elles ne sont pas ...
Ensuite, la partie qui définit la valeur réelle est:
c.CellValue = new CellValue(indx.ToString());
c.DataType = new EnumValue<CellValues>(CellValues.SharedString);
ind x est l'indice de la chaîne dans la table de chaînes partagée.
Quelqu'un peut-il aider?
Merci
Edité pour ajouter les portions de code pertinentes ... Merci pour le conseil sur la colonne. – sfaust
Ok, je ne peux pas comprendre comment faire fonctionner les colonnes. Je ne trouve rien sur le code que vous avez posté ci-dessus. Je ne vois rien dans OpenXML à propos d'un objet appelé ExcelColumn. Je vois Column et Columns, et si j'ouvre manuellement les fichiers XML, je peux voir un élément avec plusieurs éléments en son sein. Cependant, lorsque j'essaie Worksheet.Descendants () ou Worksheet.Descendants () ou Worksheet.Éléments () ou Worksheet.Elements () Je n'ai rien ... –
sfaust
Comment dans le monde arrivez-vous à l'index de style de colonne? – sfaust