PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEV, WEBDEV ET WINDEV MOBILE

Version : 19.0
Votre version : XXA150056M

WinDevWebDev - Code ServeurWebDev - Code NavigateurWinDev MobileEtats et RequêtesWindowsLinuxWindows MobileWindows PhoneWindows Store appsAndroidWidget AndroidiPhone/iPadJavaPHPAjaxCode Utilisateur (MCU)Langage ExterneHFSQLHFSQL Client/ServeurProcédures stockéesHyper File 5.5OLE DBODBCAccès Natifs
Manipulez vos fichiers XLS

Présentation
WinDev et WebDev mettre à votre disposition deux méthodes pour manipuler les fichiers Excel :
  • Méthode 1 : Manipulation dynamique des feuilles XLS et XLSX
    Cette méthode utilise différents types de variables ainsi que des fonctions WLangage. Cette méthode permet de gérer les fichiers Excel (fichiers XLS ou XLSX) en lecture et en écriture.
  • Méthode 2 (conservée par compatibilité) : Utilisation de fonctions WLangage pour gérer les fonctions XLS.
    Cette méthode permet de gérer uniquement les fichiers XLS en lecture.

Méthode 1 : Manipulation dynamique des fichiers XLS et XLSX
Pour manipuler les fichiers XLS et XLSX, le WLangage met à votre disposition :
  • différents types de variables. Ces types de variables permettent de manipuler un document XLS, une ligne ou une colonne XLS, une cellule XLS.
  • différentes fonctions WLangage manipulant les différents types de données.
Pour manipuler les fichiers XLS et XLSX :
  1. Déclarez une variable de type xlsDocument. Ce type de variable permet de décrire et de modifier un document Excel.
  2. Ouvrez si nécessaire le fichier XLS (fonction xlsOuvre) et associez-le à la variable de type xlsDocument.
  3. Vous pouvez manipuler les différents éléments du document Excel :
    • soit avec les fonctions WLangage.
    • soit avec les propriétés du type xlsDocument.
Exemple :

IDFicXLS est un xlsDocument
UnFichier est une chaîne
UnFichier = fRepExe + "\Suivi d'affaires1.xls"

IDFicXLS = xlsOuvre(UnFichier, xlsEcriture)
SI ErreurDétectée = Faux ALORS
        Azz est un entier = xlsFeuilleEnCours(IDFicXLS)
        Info("Feuille en cours dans le fichier Excel : " + Azz)
        // Changement de feuille
        SI xlsFeuilleEnCours(IDFicXLS, 2) ALORS
                Info("La feuille courante a été modifiée.")
               // Lecture d'une cellule pour test
                Info(xlsDonnée(IDFicXLS, 11, 2))
        SINON
                Erreur("Le fichier sélectionné ne comporte pas de seconde feuille !")
        FIN
SINON
        Erreur("Attention ! le fichier est déjà ouvert sur un poste de travail !")
FIN

Remarques :

  • Si le fichier Excel est ouvert en mode lecture/écriture (constante xlsEcriture), le fichier est ouvert et bloqué jusqu'à sa fermeture. Pour sauvegarder les modifications réalisées, utilisez la fonction xlsSauve.
  • Les fonctions XLS ne nécessitent pas l'installation du logiciel "Microsoft Excel" sur le poste des utilisateurs.
  • Les fichiers XLS et les fichiers spécifiques à Office 2007 (fichiers .xlsx) sont gérés.
Liste des exemples associés :
WD Classe XLS Exemple Didactique (WinDev) : WD Classe XLS
[ + ] L'exemple WD Classe XLS permet de manipuler les classes xlsDocument, xlsColonne, xlsLigne et xlsCellule. Cet exemple didactique a pour but d'offrir une première approche, simple, de la manipulation de ces classes.
Cet exemple affiche le contenu d'un document .xls dans une table WinDev, et offre la possibilité de modifier :
- le contenu d'une cellule.
- la police du texte d'une cellule (Gras, Italique, Souligné, Couleur).
- la couleur de fond de cellule.

Méthode 2 : Lecture des fichiers Excel (méthode conservée par compatibilité)
WinDev et WebDev mettent à votre disposition des fonctions pour gérer vos fichiers de type ".XLS" depuis vos applications WinDev et sites WebDev. Grâce à ces fonctions, vous pouvez récupérer l'ensemble des données saisies sous Excel.

Pour manipuler un document XLS :

  1. Utilisez la fonction xlsOuvre. Cette fonction renvoie l'identifiant du fichier XLS manipulé.
  2. Utilisez les fonctions XLS pour récupérer les différentes informations voulues sur le fichier Excel et ses données.
Remarques :
  • Les fonctions XLS ne nécessitent pas l'installation du logiciel "Microsoft Excel" sur le poste des utilisateurs.
  • Seuls les fichiers XLS sont gérés. Les fichiers spécifiques à Office 2007 (fichiers .xlsx) ne sont pas gérés.
  • Deux modes de fonctionnement des fonctions XLS sont disponibles :
    • Mode de fonctionnement compatible avec les versions précédentes de WinDev et WebDev : dans ce mode, seule la première feuille du classeur est accessible.
    • Nouveau mode de fonctionnement multi-feuilles : dans ce mode, il est possible de sélectionner la feuille du classeur où les manipulations sont effectuées.
La fonction permettant de modifier le mode de manipulation des fonctions XLS est la fonction XLSOuvre.

Exemples livrés

Un exemple unitaire sur la gestion des fichiers XLS est livré avec WinDev : Fonctions Excel. Cet exemple est disponible dans le volet "Assistants, Exemples et Composants", option "Exemples Unitaires".

Fonctions WLangage
Ces fonctions permettent de :
  • manipuler des fichiers ".XLS" : ouverture et fermeture.
  • obtenir des informations sur vos fichiers ".XLS" : donnée d'une cellule, nombre de lignes, nombre de colonnes, type de colonne, titre de colonne (voir schéma).
  • connaître la version d'Excel utilisée.
  • identifier les erreurs survenues lors des différentes manipulations sur un fichier ".XLS".

Pour connaître la liste des fonctions utilisables avec les fichiers Excel, consultez Fonctions XLS.

Liste des exemples associés :
Fonctions Excel Exemple unitaire (WinDev) : Fonctions Excel
[ + ] Fonctions XLS

Cet exemple illustre l'import et l'export du contenu d'une table WinDev vers Excel et Word. Ceci est entièrement automatisé grâce à de nouvelles fonctions W-Langage.
Dans cet exemple, nous abordons deux thèmes principaux :
1/ comment exporter le contenu d'une table vers Excel ou Word
2/ comment importer  le contenu d'un fichier Excel vers une table WinDev

Un bouton permet d'importer toutes les données d'un fichier Excel dans une table de l'application.
Un second bouton permet d'exporter le contenu de la table vers le fichier Excel d'origine pour y répercuter les modifications.
La table peut également être exportée sous forme de tableau dans Word
WD Classe XLS Exemple Didactique (WinDev) : WD Classe XLS
[ + ] L'exemple WD Classe XLS permet de manipuler les classes xlsDocument, xlsColonne, xlsLigne et xlsCellule. Cet exemple didactique a pour but d'offrir une première approche, simple, de la manipulation de ces classes.
Cet exemple affiche le contenu d'un document .xls dans une table WinDev, et offre la possibilité de modifier :
- le contenu d'une cellule.
- la police du texte d'une cellule (Gras, Italique, Souligné, Couleur).
- la couleur de fond de cellule.
WD Pilotage de Excel Exemple Didactique (WinDev) : WD Pilotage de Excel
[ + ] Cet exemple montre comment piloter Excel via OLE Automation.
Toutes les fonctions d'Excel peuvent être ainsi pilotées.
Cet exemple est compatible avec les versions 97, 2000, 2002 (XP) et 2003 d'Excel.
Résumé de l'exemple livré avec WinDev :
Piloter un logiciel bureautique comme Excel peut s'avérer utile pour analyser des données provenant d'une base de données.
Grâce à la classe "CExcel" livrée avec WinDev, ce traitement devient très simple.
Les principales fonctions de Excel sont directement pilotables (graphe, insertion d'objets, tris...).
Comment piloter Excel via OLE Automation ?
Un objet OLE Automation dispose de méthodes et de propriétés. Ceci permet de le piloter directement en WLangage.
Par exemple, pour mettre la cellule sélectionnée en gras :
MonObjetOLEAutomation>>Selection>>Font>>Bold = Vrai
WD Pilotage de Tableurs Exemple Didactique (WinDev) : WD Pilotage de Tableurs
[ + ] Cet exemple illustre le pilotage du tableur OpenOffice Calc et du tableur Excel, avec un code générique.
Il est en effet possible de créer, ouvrir et manipuler des classeurs ouverts dans OpenOfficeCalc et Excel depuis une application WinDev.
Vous pouvez par exemple, vous positionner sur une feuille, sélectionner des cellules, lire et modifier leur contenu, sauvegarder le classeur puis le refermer.
L'utilisation d'une classe abstraite CTableur permet de mettre en oeuvre un code unique, quelque soit le tableur installé sur le poste utilisateur
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire