Une image pour mieux comprendre:

Pour répondre j’espère le plus clairement , pour LigneExcelNbRST et NbRST, ce sont 2 variables qui me permette d'afficher le nombre d’ajout de ligne (ce qui correspond pour moi au nombre de Bloc que j'ai a expédier.) cette donnée n'étant pas dans la datagridview je la crée en dynamique.
LigneExcelNbRST = la ligne d'insertion (dans mon cas l'un en dessous de l'autre)
NbRST = le nombre de bloc
LigneExcel et ColonneExcel semble correspondre au début de remplissage dans la feuille Excel ? Ce sont des offset ?
LigneExcel et ColonneExcel sont mes deux variables qui me permettre de me balader dans la feuille excel pour insérer les données dans l'ordre souhaiter.
au début de mon code quand je crée ses variables je leur est donnée une valeur de départ car mon tableau ne commence pas à la case "A1" mais commence à la case "B27"
La mise en forme (bordure) n'est valable que si on respecte le même nombre de colonne que toi (4) ? Non du tout
ma méthode présenter ici est écrite pour moi mais elle peut être généraliser. en gros je simule une sélection en diagonal, donc il faut 2 paramètres la case de début et la case de fin. par exemple "A1" à "B2" ...
1 2
| xlsRange = xlWorkSheet.get_Range("A1", "B2");
xlsRange.Borders.ColorIndex = 1; |
Le problème c'est que je ne travaillai pas dans ce format la moi. il me fallait convertir '1 ,1' en "A1" par exemple.
Voila comment j'ai procéder pour convertir mes valeurs et rendre mes coordonnées dynamiques.
int coord_fin = LigneExcel - 1;
j'ai donc récupérer ma variable LigneExcel qui a pour valeur la ligne suivante pour une prochaine insertion, je lui est décrémenter 1 car moi je voulais me contenter de rester dans les cases remplie par des données.
string Coord_debut = "B27";
Ici j'utilise le format normal car je connais les coordonnées de départ de mon tableau.
string Coord_fin = "E"+coord_fin.ToString();
Ensuite je construit ma coordonnée final, donc un string forcement pour ce caler au format demander, "E" car je sais que mon tableau ne peut pas être plus large + le N° de la derniere ligne utiliser dans la phase d'insertion de donnée, le tout converti en strin
xlsRange = xlWorkSheet.get_Range(Coord_debut, Coord_fin);
ici nous créons notre sélection en diagonal.
Enfin cette ligne indique le style de trait que vous utilisé sur la sélection.
xlsRange.Borders.ColorIndex = 1;
Pour: misValue
j'avais suivie un tuto ou il l'utilisait et j'ai changer le code. Je l'avais laisser au cas ou que je le réutilise et c'est vrai que je sais pas trop à quoi cela sert désoler ..
j’espère être clair et cas vous aidera tous
Partager