2017-10-05 6 views
0

Je suis récemment passé d'interop/closedxml à EPPlus, j'ai remarqué que EPPlus gère différemment les références absolues R1C1.Problème EPPlus avec R1C1 - référence à la colonne absolue dans la formule

Consultez le code suivant

int colIndex = 5; 
string formula = string.Format("MATCH(@""12345"",C{0},0)", colIndex); 

int targetCellRow = 1; 
int targetCellColumnAbs = 1; 
workSheet.Cells[targetCellRow, targetCellColumnAbs].FormulaR1C1 = formula; 

Avec EPPlus cela se traduira par:

=MATCH("12345";Inkoopdelen!R[4]C[2];0) 

Avec le InterOp et ClosedXML

=MATCH("12345";Inkoopdelen!C5;0) 

Dans mon résultat final la formule EPPlus ne fonctionne, car Il fait référence à une cellule et non à une plage de colonnes. Il fait également référence à la mauvaise colonne.

La référence R [4] C [2] à partir de la cellule A1 = deux colonnes à droite de la colonne A = colonne C.

La référence absolue à la colonne 5 doit aboutir la colonne E (Soit C [4] OU C5). Comment puis-je utiliser EPPlus pour respecter les références de plages absolues que j'entre dans la formule?

Répondre