Code source wiki de Export Excel
Modifié par Julien EYMERY le 2016/06/29 15:34
Masquer les derniers auteurs
| author | version | line-number | content |
|---|---|---|---|
| |
1.1 | 1 | ((( |
| 2 | = Introduction = | ||
| 3 | ))) | ||
| 4 | |||
| 5 | Pour réaliser des (% style="color: rgb(255,102,0);" %)**extractions Excel**(%%), il faut l'(% style="color: rgb(255,102,0);" %)**objet graphique**(%%) Adelia Visual Studio (% style="color: rgb(255,102,0);" %)**Client Excel**(%%) ou faire appel à la (% style="color: rgb(255,102,0);" %)**méthode Exporter_Liste**(%%) d'une liste graphique. | ||
| 6 | Nous aborderons ici la solution du (% style="color: rgb(255,102,0);" %)**client Excel**(%%) dans le cadre d'une sortie de document. | ||
| 7 | |||
| 8 | {{hardis-info type="warning" icon="true"}} | ||
| 9 | Il est nécessaire qu'Excel soit installé sur le poste qui exécute le programme Visual pour que le client Excel fonctionne. | ||
| 10 | {{/hardis-info}} | ||
| 11 | |||
| 12 | |||
| 13 | ((( | ||
| 14 | = Mise en œuvre = | ||
| 15 | ))) | ||
| 16 | |||
| 17 | Le lien avec l'application Excel est effectué au travers d'un (% style="color: rgb(255,102,0);" %)**objet graphique**(%%). Il faut donc créer un (% style="color: rgb(255,102,0);" %)**programme interactif**(%%) et placer dans une fenêtre l'objet graphique (% style="color: rgb(255,102,0);" %)**Client Excel**(%%). | ||
| 18 | |||
| 19 | {{hardis-info type="info" icon="true"}} | ||
| 20 | Cet objet est nécessaire mais il n'est pas obligatoire d'afficher la fenêtre. | ||
| 21 | {{/hardis-info}} | ||
| 22 | |||
| 23 | ((( | ||
| 24 | ==== Initialisation ==== | ||
| 25 | ))) | ||
| 26 | |||
| 27 | En premier lieu, il faut établir une communication entre le programme Adelia Visual et le logiciel Microsoft Excel. Pour cela on utilise la méthode (% style="color: rgb(255,102,0);" %)**APPLI_CONNECTER**(%%) de l'objet graphique (% style="color: rgb(255,102,0);" %)**Client Excel**(%%) (ici nommé **CLI_EXCEL**). | ||
| 28 | |||
| 29 | Par exemple : | ||
| 30 | |||
| 31 | |||
| 32 | {{code title="Déclaration" language="none"}} | ||
| 33 | Num_Bin_4 CodeRetour | ||
| 34 | Bool TopVisible | ||
| 35 | Alpha(260) NomModele | ||
| 36 | Alpha(50) NomFeuille | ||
| 37 | Alpha(260) NomClasseur | ||
| 38 | Bool SauverModif | ||
| 39 | {{/code}} | ||
| 40 | |||
| 41 | |||
| 42 | |||
| 43 | {{code title="Traitement" language="none"}} | ||
| 44 | Appeler_Methode FEN_VIS_EDITION.CLI_EXCEL APPLI_CONNECTER CodeRetour | ||
| 45 | |||
| 46 | {{/code}} | ||
| 47 | |||
| 48 | |||
| 49 | On va ensuite rendre non visibilite l'application Excel avec la méthode (% style="color: rgb(255,102,0);" %)**APPLI_FIXER_VISIBILITE**(%%). | ||
| 50 | |||
| 51 | {{hardis-info type="tip" icon="true"}} | ||
| 52 | Le fait de rendre non visible la feuille alimentée permet d'obtenir un temps de traitement bien meilleur. | ||
| 53 | {{/hardis-info}} | ||
| 54 | |||
| 55 | |||
| 56 | |||
| 57 | {{code language="none"}} | ||
| 58 | TopVisible = *FAUX | ||
| 59 | Appeler_Methode FEN_VIS_EDITION.CLI_EXCEL APPLI_FIXER_VISIBILITE TopVisible CodeRetour | ||
| 60 | |||
| 61 | {{/code}} | ||
| 62 | |||
| 63 | |||
| 64 | Ensuite il existe deux solutions pour réaliser une sortie vers un classeur Excel : | ||
| 65 | 1. Ouvrir un modèle existant | ||
| 66 | 1. Créer un nouveau classeur | ||
| 67 | |||
| 68 | ((( | ||
| 69 | ==== Ouverture d'un modèle existant : ==== | ||
| 70 | ))) | ||
| 71 | |||
| 72 | Utiliser la méthode (% style="color: rgb(255,102,0);" %)**CLASS_OUVRIR**(%%) et activer la feuille dans laquelle on souhaite écrire à l'aide de la méthode (% style="color: rgb(255,102,0);" %)**FEUIL_ACTIVER**(%%) : | ||
| 73 | |||
| 74 | |||
| 75 | {{code language="none"}} | ||
| 76 | NomModele = 'C:\Modele1.xls' | ||
| 77 | NomFeuille = 'MaFeuil' | ||
| 78 | Appeler_Methode FEN_VIS_EDITION.CLI_EXCEL CLASS_OUVRIR NomModele CodeRetour | ||
| 79 | Appeler_Methode FEN_VIS_EDITION.CLI_EXCEL FEUIL_ACTIVER NomFeuille CodeRetour | ||
| 80 | |||
| 81 | {{/code}} | ||
| 82 | |||
| 83 | ((( | ||
| 84 | ==== Création d'un nouveau classeur : ==== | ||
| 85 | ))) | ||
| 86 | |||
| 87 | Créer un nouveau classeur de type feuille et fixer le nom de la feuille active avec les méthodes CLASS_CREER et FEUIL_FIXER_NOM. | ||
| 88 | |||
| 89 | |||
| 90 | {{code language="none"}} | ||
| 91 | NomFeuille = 'MaFeuil' | ||
| 92 | Appeler_Methode FEN_VIS_EDITION.CLI_EXCEL CLASS_CREER \_EXL_FEUILLE_CALCUL CodeRetour | ||
| 93 | Appeler_Methode FEN_VIS_EDITION.CLI_EXCEL FEUIL_FIXER_NOM NomFeuille CodeRetour | ||
| 94 | |||
| 95 | {{/code}} | ||
| 96 | |||
| 97 | ((( | ||
| 98 | ==== Ecriture des données ==== | ||
| 99 | ))) | ||
| 100 | |||
| 101 | Il faudra ensuite traiter les informations à envoyer vers (% style="color: rgb(255,102,0);" %)**Excel**(%%) afin de composer votre document. | ||
| 102 | Pour cela reportez-vous à [[>>doc:||anchor=ecriture]]. | ||
| 103 | ((( | ||
| 104 | ==== Enregistrement/Affichage du document ==== | ||
| 105 | ))) | ||
| 106 | |||
| 107 | Une fois la feuille générée, plusieurs possibilités s'offrent au développeur : | ||
| 108 | 1. Afficher la feuille à votre utilisateur sans faire d'enregistrement, | ||
| 109 | 1. Enregistrer la feuille puis fermer le classeur et l'application Excel, | ||
| 110 | 1. Enregistrer la feuille et l'afficher à l'utilisateur. | ||
| 111 | |||
| 112 | |||
| 113 | |||
| 114 | {{code language="none"}} | ||
| 115 | /* ___ Pour rendre l'application visible (points 1,2 et 3) ______________________________ | ||
| 116 | TopVisible = *VRAI | ||
| 117 | Appeler_Methode FEN_VIS_EDITION.CLI_EXCEL APPLI_FIXER_VISIBILITE TopVisible CodeRetour | ||
| 118 | |||
| 119 | /* ___ Pour enregistrer le classeur (points 2 et 3) _____________________________________ | ||
| 120 | NomClasseur = 'C:\NouveauClasseur.xls' | ||
| 121 | Appeler_Methode FEN_VIS_EDITION.CLI_EXCEL CLASS_ENREGISTRER_SOUS NomClasseur CodeRetour | ||
| 122 | |||
| 123 | * ___ Pour fermer le classeur après l'avoir enregistré (point 2) ________________________ | ||
| 124 | SauverModif = *Vrai | ||
| 125 | Appeler_Methode FEN_VIS_EDITION.CLI_EXCEL CLASS_FERMER SauverModif NomClasseur CodeRetour | ||
| 126 | |||
| 127 | * ___ Pour déconnecter le programme de l'application Excel (points 1, 2 et 3) ___________ | ||
| 128 | Appeler_Methode FEN_VIS_EDITION.CLI_EXCEL APPLI_DECONNECTER CodeRetour | ||
| 129 | |||
| 130 | {{/code}} | ||
| 131 | |||
| 132 | {{id ="ecriture" name="ecriture"/}}Ecriture du détail de la feuille et mise en forme((( | ||
| 133 | ==== Cellules et plages ==== | ||
| 134 | ))) | ||
| 135 | |||
| 136 | En préambule, il faut savoir qu'afin de traiter de l'écriture ou de la mise en forme de (% style="color: rgb(255,102,0);" %)**cellules**(%%) dans Microsoft Excel vous devez manipuler une (% style="color: rgb(255,102,0);" %)**plage**(%%). | ||
| 137 | La définition d'(% style="color: rgb(255,102,0);" %)**une plage est constituée de la position de la cellule de départ et si nécessaire de la position de la cellule de fin**(%%) avec le symbole (% style="color: rgb(255,102,0);" %)**:**(%%) comme séparateur. | ||
| 138 | La position d'une cellule est représentée par la position dans la colonne suivie de la ligne. | ||
| 139 | Par exemple : **B7** ~=> ce qui représente la colonne B et la ligne 7 | ||
| 140 | Pour une (% style="color: rgb(255,102,0);" %)**plage**(%%) vous pouvez écrire par exemple : **A1:D1** ~=> ce qui représente les 4 premières colonnes de la première ligne. | ||
| 141 | Il est également possible de définir une (% style="color: rgb(255,102,0);" %)**plage**(%%) portant sur plusieurs colonnes et plusieurs lignes tel que : **A1:D123** ~=> ce qui représente les 123 premières lignes des 4 premières colonnes. | ||
| 142 | ((( | ||
| 143 | ==== Limitations ==== | ||
| 144 | ))) | ||
| 145 | |||
| 146 | {{hardis-info type="warning" icon="true"}} | ||
| 147 | Il faut noter que Microsoft Excel comporte des limitations en fonction de la version utilisée. | ||
| 148 | {{/hardis-info}} | ||
| 149 | |||
| 150 | Par exemple, dans sa version 2000 il n'est pas possible d'avoir plus de 65536 lignes et 256 colonnes. Il existe encore bien d'autres limitations toutes aussi importantes à prendre en compte dans votre application telles que : | ||
| 151 | * Largeur des colonnes 255 caractères | ||
| 152 | * Hauteur des lignes 409 points | ||
| 153 | * Longueur du contenu des cellules (texte) 32 767 caractères | ||
| 154 | * Nombre maximal de couleurs par classeur 56 | ||
| 155 | * Nombre maximal de styles de cellules par classeur 4 000 | ||
| 156 | * D'autres limitations basées sur la limite de la taille mémoire | ||
| 157 | |||
| 158 | ((( | ||
| 159 | ==== Méthodes pour l'écriture et la mise en forme de cellule ==== | ||
| 160 | ))) | ||
| 161 | |||
| 162 | Afin de pouvoir positionner une information dans une cellule, vous avez à votre disposition la méthode PLAGE_FIXER_VALEURS qui nécessite une plage de cellules, une donnée simple ou un tableau de données à écrire ainsi que le nombre d'éléments à prendre en compte. Vous pourriez avoir un tableau de 200 postes et pour autant ne vouloir en écrire que 10. | ||
| 163 | Une autre possibilité est de vous appuyer sur le système de formule de calcul au travers de la méthode PLAGE_FIXER_FORMULE_LOCAL. Vous avez donc la possibilité d'utiliser toutes les fonctions offertes par la version d'Excel de la même manière que vous auriez rédigé la formule. | ||
| 164 | En ce qui concerne la mise en forme des cellules, de nombreuses méthodes sont à disposition dont les principales sont : | ||
| 165 | * (% style="color: rgb(255,102,0);" %)**PLAGE_AUTO_AJUSTER**(%%) | ||
| 166 | * (% style="color: rgb(255,102,0);" %)**PLAGE_FIXER_HAUTEUR_LIGNE**(%%) | ||
| 167 | * (% style="color: rgb(255,102,0);" %)**PLAGE_FIXER_LARGEUR_COLONNE**(%%) | ||
| 168 | * (% style="color: rgb(255,102,0);" %)**PLAGE_FUSIONNER**(%%) | ||
| 169 | |||
| 170 | * (% style="color: rgb(255,102,0);" %)**PLAGE_FIXER_ALIGNEMENT_HORIZ**(%%) | ||
| 171 | * (% style="color: rgb(255,102,0);" %)**PLAGE_FIXER_ALIGNEMENT_VERT**(%%) | ||
| 172 | * (% style="color: rgb(255,102,0);" %)**PLAGE_FIXER_ORIENTATION**(%%) | ||
| 173 | * (% style="color: rgb(255,102,0);" %)**PLAGE_PERMETTRE_RENVOI_LIGNE**(%%) | ||
| 174 | |||
| 175 | * (% style="color: rgb(255,102,0);" %)**PLAGE_FIXER_CONTOUR**(%%) | ||
| 176 | * (% style="color: rgb(255,102,0);" %)**PLAGE_FIXER_COULEUR_FOND**(%%) | ||
| 177 | |||
| 178 | * (% style="color: rgb(255,102,0);" %)**PLAGE_FIXER_POLICE**(%%) | ||
| 179 | * (% style="color: rgb(255,102,0);" %)**PLAGE_FIXER_STYLES_POLICE**(%%) | ||
| 180 | * (% style="color: rgb(255,102,0);" %)**PLAGE_FIXER_COULEUR_POLICE**(%%) | ||
| 181 | |||
| 182 | * (% style="color: rgb(255,102,0);" %)**PLAGE_FIXER_FORMAT_EDITION_LOCAL**(%%) | ||
| 183 | |||
| 184 | ((( | ||
| 185 | ==== Exemple d'une sortie d'un entête : ==== | ||
| 186 | ))) | ||
| 187 | |||
| 188 | |||
| 189 | {{code title="Déclaration" language="none"}} | ||
| 190 | Alpha(100) TAB_ALP_CONTENU_LIGNE(50) | ||
| 191 | Num_Bin_4 W_NB4_NB_ELEMENTS | ||
| 192 | Num_E(9,0) W_NUM_NUMERO_LIGNE | ||
| 193 | Num_E(9,0) W_NUM_1ERE_LIGNE | ||
| 194 | Alpha(200) W_ALP_PLAGE | ||
| 195 | Num_Bin_4 W_NB4_CODE_RETOUR | ||
| 196 | Alpha(250) W_ALP_POLICE | ||
| 197 | Num_E(6,2) W_NUM_TAILLE | ||
| 198 | Num_Bin_4 W_NB4_STYL_LIG | ||
| 199 | Num_Bin_4 W_NB4_EP_TRAIT | ||
| 200 | Num_Bin_4 W_NB4_ALIGNH | ||
| 201 | Num_Bin_4 W_NB4_ALIGNV | ||
| 202 | Num_Bin_4 W_NB4_HAUT | ||
| 203 | Bool W_BOO_GRAS | ||
| 204 | Bool W_BOO_ITAL | ||
| 205 | Bool W_BOO_BARRE | ||
| 206 | Num_Bin_4 W_NB4_SOULIG | ||
| 207 | |||
| 208 | {{/code}} | ||
| 209 | |||
| 210 | |||
| 211 | |||
| 212 | {{code title="Traitement" language="none"}} | ||
| 213 | /* ___ Information de mise en page ______________________________________________________ | ||
| 214 | W_ALP_POLICE = 'Arial' | ||
| 215 | W_NUM_TAILLE = 9 | ||
| 216 | W_NB4_STYL_LIG = _EXL_STYLE_LIGNE_CONTINU | ||
| 217 | W_NB4_EP_TRAIT = _EXL_EPAISSEUR_LIGNE_MOYENNE | ||
| 218 | W_NB4_ALIGNH = _EXL_ALIGNEMENT_HORIZ_CENTRE | ||
| 219 | W_NB4_ALIGNV = _EXL_ALIGNEMENT_VERT_CENTRE | ||
| 220 | W_NB4_HAUT = 60 | ||
| 221 | W_BOO_GRAS = *FAUX | ||
| 222 | W_BOO_ITAL = *FAUX | ||
| 223 | W_BOO_BARRE = *FAUX | ||
| 224 | W_NB4_SOULIG = _EXL_SOULIGNEMENT_AUCUN | ||
| 225 | |||
| 226 | TAB_ALP_CONTENU_LIGNE(1) = 'Client' | ||
| 227 | TAB_ALP_CONTENU_LIGNE(2) = 'Projet' | ||
| 228 | TAB_ALP_CONTENU_LIGNE(3) = 'Budget initial' | ||
| 229 | TAB_ALP_CONTENU_LIGNE(4) = 'Début' | ||
| 230 | TAB_ALP_CONTENU_LIGNE(5) = 'Fin' | ||
| 231 | TAB_ALP_CONTENU_LIGNE(6) = 'Conso' | ||
| 232 | TAB_ALP_CONTENU_LIGNE(7) = 'RàF' | ||
| 233 | TAB_ALP_CONTENU_LIGNE(8) = 'Gain/Dérive' | ||
| 234 | TAB_ALP_CONTENU_LIGNE(9) = 'Commentaires techniques' | ||
| 235 | W_NB4_NB_ELEMENTS = 9 | ||
| 236 | |||
| 237 | /* ___ Définir la plage (de la colonne A jusqu'à I pour la première ligne) ______________ | ||
| 238 | W_NUM_NUMERO_LIGNE = 1 | ||
| 239 | W_ALP_PLAGE = 'A' /// W_NUM_NUMERO_LIGNE /// ': ' // I' /// W_NUM_NUMERO_LIGNE | ||
| 240 | |||
| 241 | /* ___ Ecrire la ligne __________________________________________________________________ | ||
| 242 | Appeler_Methode FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_VALEURS W_ALP_PLAGE TAB_ALP_CONTENU_LIGNE W_NB4_NB_ELEMENTS W_NB4_CODE_RETOUR | ||
| 243 | |||
| 244 | /* ___ Définir la police de caractère ___________________________________________________ | ||
| 245 | W_ALP_POLICE = '' | ||
| 246 | Appeler_Methode FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_POLICE W_ALP_PLAGE W_ALP_POLICE W_NUM_TAILLE W_NB4_CODE_RETOUR | ||
| 247 | |||
| 248 | /* ___ Définir le style des cellules ____________________________________________________ | ||
| 249 | Appeler_Methode FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_STYLES_POLICE W_ALP_PLAGE W_BOO_GRAS W_BOO_ITAL W_BOO_BARRE W_NB4_SOULIG W_NB4_CODE_RETOUR | ||
| 250 | |||
| 251 | /* ___ Définir l'alignement des cellules ________________________________________________ | ||
| 252 | Appeler_Methode FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_ALIGNEMENT_HORIZ W_ALP_PLAGE W_NB4_ALIGNH W_NB4_CODE_RETOUR | ||
| 253 | Appeler_Methode FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_ALIGNEMENT_VERT W_ALP_PLAGE W_NB4_ALIGNV W_NB4_CODE_RETOUR | ||
| 254 | |||
| 255 | /* ___ Définir le contour des cellules __________________________________________________ | ||
| 256 | Appeler_Methode FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_CONTOUR W_ALP_PLAGE W_NB4_STYL_LIG W_NB4_EP_TRAIT W_NB4_CODE_RETOUR | ||
| 257 | |||
| 258 | /* ___ Ajuster la taille des colonnes au contenu des titres de colonnes _________________ | ||
| 259 | Appeler_Methode FEN_VIS_EDITION.CLI_EXCEL PLAGE_AUTO_AJUSTER W_ALP_PLAGE W_NB4_CODE_RETOUR | ||
| 260 | |||
| 261 | /* ___ Définir la hauteur de la ligne ___________________________________________________ | ||
| 262 | Appeler_Methode FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_HAUTEUR_LIGNE W_ALP_PLAGE W_NB4_HAUT W_NB4_CODE_RETOUR | ||
| 263 | |||
| 264 | /* ___ Changer la couleur de fond des colonnes __________________________________________ | ||
| 265 | /* ___ R0 V0 B255 (BLEU) ________________________________________________________________ | ||
| 266 | W_NB4_VALEUR_RVB = (0)+(0*256)+(255*65536) /\* Rouge+Vert*256+Bleu*65536 | ||
| 267 | Appeler_Methode FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_COULEUR_FOND W_ALP_PLAGE W_NB4_VALEUR_RVB W_NB4_CODE_RETOUR | ||
| 268 | |||
| 269 | /* ___ Changer la couleur du texte ______________________________________________________ | ||
| 270 | /* ___ R255 V255 B255 (BLANC) ___________________________________________________________ | ||
| 271 | W_NB4_VALEUR_RVB = (255)+(255*256)+(255*65536) /\* Rouge+Vert*256+Bleu*65536 | ||
| 272 | APPELER_METHODE FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_COULEUR_POLICE W_ALP_PLAGE W_NB4_VALEUR_RVB W_NB4_CODE_RETOUR | ||
| 273 | |||
| 274 | /* ___ Mémoriser la position de la première ligne de détail _____________________________ | ||
| 275 | W_NUM_1ERE_LIGNE = W_NUM_NUMERO_LIGNE + 1 | ||
| 276 | |||
| 277 | {{/code}} | ||
| 278 | |||
| 279 | ((( | ||
| 280 | ==== Exemple d'écriture des lignes de détails d'une liste : ==== | ||
| 281 | ))) | ||
| 282 | |||
| 283 | |||
| 284 | {{code title="Traitement" language="none"}} | ||
| 285 | W_NUM_NUMERO_LIGNE = W_NUM_NUMERO_LIGNE + 1 | ||
| 286 | |||
| 287 | /* ___ Les données utilisées dans cet exemple proviennent _______________________________ | ||
| 288 | /* ___ de différents fichiers traités auparavant ________________________________________ | ||
| 289 | |||
| 290 | /* ___ 'Client' _________________________________________________________________________ | ||
| 291 | W_ALP_ELEMENT = CL_LIB_CLIENT | ||
| 292 | W_ALP_PLAGE = 'A' /// W_NUM_NUMERO_LIGNE /// ': ' // 'A' /// W_NUM_NUMERO_LIGNE | ||
| 293 | APPELER_METHODE FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_VALEURS W_ALP_PLAGE W_ALP_ELEMENT 1 W_NB4_CODE_RETOUR | ||
| 294 | |||
| 295 | /* ___ 'Projet' _________________________________________________________________________ | ||
| 296 | W_ALP_ELEMENT = PJ_DESIGN_PRJ | ||
| 297 | W_ALP_PLAGE = 'B' /// W_NUM_NUMERO_LIGNE /// ': ' // 'B' /// W_NUM_NUMERO_LIGNE | ||
| 298 | APPELER_METHODE FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_VALEURS W_ALP_PLAGE W_ALP_ELEMENT 1 W_NB4_CODE_RETOUR | ||
| 299 | |||
| 300 | /* ___ 'Budget initial' _________________________________________________________________ | ||
| 301 | W_NUM_ELEMENT_15_2 = S1_CHG_GLOB_PRJ | ||
| 302 | W_ALP_PLAGE = 'C' /// W_NUM_NUMERO_LIGNE /// ': ' // 'C' /// W_NUM_NUMERO_LIGNE | ||
| 303 | APPELER_METHODE FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_VALEURS W_ALP_PLAGE W_NUM_ELEMENT_15_2 1 W_NB4_CODE_RETOUR | ||
| 304 | |||
| 305 | /* ___ 'Début' __________________________________________________________________________ | ||
| 306 | SI PJ_DATE_DEBUT <> \*LOVAL | ||
| 307 | W_ALP_PLAGE = 'D' /// W_NUM_NUMERO_LIGNE /// ': ' // 'D' /// W_NUM_NUMERO_LIGNE | ||
| 308 | APPELER_METHODE FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_VALEURS W_ALP_PLAGE PJ_DATE_DEBUT 1 W_NB4_CODE_RETOUR | ||
| 309 | FIN | ||
| 310 | * 'Fin' | ||
| 311 | SI PJ_DATE_FIN_PRJ <> \*LOVAL | ||
| 312 | W_ALP_PLAGE = 'E' /// W_NUM_NUMERO_LIGNE /// ': ' // 'E' /// W_NUM_NUMERO_LIGNE | ||
| 313 | APPELER_METHODE FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_VALEURS W_ALP_PLAGE PJ_DATE_FIN_PRJ 1 W_NB4_CODE_RETOUR | ||
| 314 | FIN | ||
| 315 | |||
| 316 | * 'Conso' | ||
| 317 | W_NUM_ELEMENT_15_2 = S1_CHG_CONS_T | ||
| 318 | W_ALP_PLAGE = 'F' /// W_NUM_NUMERO_LIGNE /// ': ' // 'F' /// W_NUM_NUMERO_LIGNE | ||
| 319 | APPELER_METHODE FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_VALEURS W_ALP_PLAGE W_NUM_ELEMENT_15_2 1 W_NB4_CODE_RETOUR | ||
| 320 | |||
| 321 | * 'RàF' | ||
| 322 | W_NUM_ELEMENT_15_2 = S1_CHG_RAF | ||
| 323 | W_ALP_PLAGE = 'G' /// W_NUM_NUMERO_LIGNE /// ': ' // 'G' /// W_NUM_NUMERO_LIGNE | ||
| 324 | APPELER_METHODE FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_VALEURS W_ALP_PLAGE W_NUM_ELEMENT_15_2 1 W_NB4_CODE_RETOUR | ||
| 325 | |||
| 326 | * 'Gain/Dérive' | ||
| 327 | * la formule est composée comme suit =C2-(F2+G2) | ||
| 328 | W_ALP_FORMULE = '=C' // W_NUM_NUMERO_LIGNE /// '-(F' // W_NUM_NUMERO_LIGNE /// '+G' // W_NUM_NUMERO_LIGNE /// ')' | ||
| 329 | W_ALP_PLAGE = 'H' /// W_NUM_NUMERO_LIGNE /// ': ' // 'H' /// W_NUM_NUMERO_LIGNE | ||
| 330 | APPELER_METHODE FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_FORMULE_LOCAL W_ALP_PLAGE W_ALP_FORMULE W_NB4_CODE_RETOUR | ||
| 331 | |||
| 332 | * 'Commentaires techniques' | ||
| 333 | W_ALP_ELEMENT = S1_COM_TECHNIQU | ||
| 334 | W_ALP_PLAGE = 'I' /// W_NUM_NUMERO_LIGNE /// ': ' // 'I' /// W_NUM_NUMERO_LIGNE | ||
| 335 | APPELER_METHODE FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_VALEURS W_ALP_PLAGE W_ALP_ELEMENT 1 W_NB4_CODE_RETOUR | ||
| 336 | |||
| 337 | {{/code}} | ||
| 338 | |||
| 339 | ((( | ||
| 340 | ==== Exemple de mise en forme finale de la liste : ==== | ||
| 341 | ))) | ||
| 342 | |||
| 343 | |||
| 344 | {{code title="Traitement" language="none"}} | ||
| 345 | W_ALP_POLICE = 'Arial' | ||
| 346 | W_NUM_TAILLE = 8 | ||
| 347 | W_NB4_STYL_LIG = _EXL_STYLE_LIGNE_CONTINU | ||
| 348 | W_NB4_EP_TRAIT = _EXL_EPAISSEUR_LIGNE_FINE | ||
| 349 | W_NB4_ALIGNH = _EXL_ALIGNEMENT_HORIZ_CENTRE | ||
| 350 | W_NB4_ALIGNV = _EXL_ALIGNEMENT_VERT_CENTRE | ||
| 351 | W_NB4_HAUT = 12 | ||
| 352 | W_BOO_GRAS = *FAUX | ||
| 353 | W_BOO_ITAL = *FAUX | ||
| 354 | W_BOO_BARRE = *FAUX | ||
| 355 | W_NB4_SOULIG = _EXL_SOULIGNEMENT_AUCUN | ||
| 356 | |||
| 357 | * De la première ligne de sortie du détail jusqu'à la dernière ligne | ||
| 358 | W_ALP_PLAGE = 'A' /// W_NUM_1ERE_LIGNE /// ': ' // 'I' /// W_NUM_NUMERO_LIGNE | ||
| 359 | |||
| 360 | * Définir la police de caractère | ||
| 361 | APPELER_METHODE FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_POLICE W_ALP_PLAGE W_ALP_POLICE W_NUM_TAILLE W_NB4_CODE_RETOUR | ||
| 362 | |||
| 363 | * Définir le style des cellules | ||
| 364 | APPELER_METHODE FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_STYLES_POLICE W_ALP_PLAGE W_BOO_GRAS W_BOO_ITAL W_BOO_BARRE W_NB4_SOULIG W_NB4_CODE_RETOUR | ||
| 365 | |||
| 366 | * Définir la hauteur de la ligne | ||
| 367 | APPELER_METHODE FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_HAUTEUR_LIGNE W_ALP_PLAGE W_NB4_HAUT W_NB4_CODE_RETOUR | ||
| 368 | |||
| 369 | * Définir le contour des cellules | ||
| 370 | APPELER_METHODE FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_CONTOUR W_ALP_PLAGE W_NB4_STYL_LIG W_NB4_EP_TRAIT W_NB4_CODE_RETOUR | ||
| 371 | |||
| 372 | * Définir l'alignement des cellules | ||
| 373 | APPELER_METHODE FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_ALIGNEMENT_VERT W_ALP_PLAGE W_NB4_ALIGNV W_NB4_CODE_RETOUR | ||
| 374 | |||
| 375 | * --------------------------------------------------------------------------------------------------------------------------- | ||
| 376 | |||
| 377 | * Définir l'alignement de certaines cellules | ||
| 378 | W_ALP_PLAGE = 'C' /// W_NUM_1ERE_LIGNE /// ': ' // 'H' /// W_NUM_NUMERO_LIGNE | ||
| 379 | W_NB4_ALIGNH = _EXL_ALIGNEMENT_HORIZ_CENTRE | ||
| 380 | APPELER_METHODE FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_ALIGNEMENT_HORIZ W_ALP_PLAGE W_NB4_ALIGNH W_NB4_CODE_RETOUR | ||
| 381 | |||
| 382 | * Ajuster la taille des colonnes au contenu des titres de colonnes | ||
| 383 | W_ALP_PLAGE = 'A1' /// ': ' // 'I' /// W_NUM_NUMERO_LIGNE | ||
| 384 | APPELER_METHODE FEN_VIS_EDITION.CLI_EXCEL PLAGE_AUTO_AJUSTER W_ALP_PLAGE W_NB4_CODE_RETOUR | ||
| 385 | |||
| 386 | * Fixer le format des cellules (nombres, dates, ...) | ||
| 387 | W_ALP_PLAGE = 'D' /// W_NUM_1ERE_LIGNE /// ': ' // 'E' /// W_NUM_NUMERO_LIGNE | ||
| 388 | W_ALP_FORMAT = 'mmm-aa' | ||
| 389 | APPELER_METHODE FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_FORMAT_EDITION_LOCAL W_ALP_PLAGE W_ALP_FORMAT W_NB4_CODE_RETOUR | ||
| 390 | |||
| 391 | * Signe en couleur | ||
| 392 | W_ALP_PLAGE = 'H' /// W_NUM_1ERE_LIGNE /// ': ' // 'H' /// W_NUM_NUMERO_LIGNE | ||
| 393 | W_ALP_FORMAT = 'Vert+0,00;Rouge-0,00' | ||
| 394 | APPELER_METHODE FEN_VIS_EDITION.CLI_EXCEL PLAGE_FIXER_FORMAT_EDITION_LOCAL W_ALP_PLAGE W_ALP_FORMAT W_NB4_CODE_RETOUR | ||
| 395 | |||
| 396 | {{/code}} | ||
| 397 | |||
| 398 |