IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

WinDev Discussion :

Windev et OLE Excel (Checkbox .)


Sujet :

WinDev

  1. #1
    Candidat au Club
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Novembre 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2008
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Windev et OLE Excel (Checkbox .)
    Bonjour, pour récupérer des données dans Windev à partir d'une feuille Excel j'utilise OLE Application. L'application en Windev doit récupérer plusieurs centaines de formulaires et générer en final un fichier texte pour import dans une base Oracle.

    Exemple de récupération de données de la feuille Excel :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    x1 est un objet OLE "Excel.Application" // Création de l'objet
    x1>>visible = OLEFaux		// Rend invisible Excel
    x1>>workbooks>>open ("Test.xls")	// Ouvre le classeur Excel
    x1>>sheets("Feuille 1")>>Select()	// Sélectionne la feuille du classeur
    et je récupère les données de la feuille

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    valeur=x1>>range("F16")>>value        // Récupération de la valeur de la cellule F16
    Il me manque les case à cocher et les listes déroulantes à récupérer

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    x1>>activeworkbook>>close(OLEFaux)// Fermeture du classeur
    x1>>Quit()			// Sortie Excel
    Tout ceci fonctionne très bien, mais sur la feuille Excel j'ai aussi des cases à cocher (Checkbox) dont je souhaiterai connaître le status par un accès avec leur nom (Nom : "Caseàchocher1") et aussi des listes de sélection du type "Zonecombinée1" dont je souhaiterai connaître la valeur sélectionnée.

    Existe t il un moyen sous Windev et OLE d'accéder aux valeurs de ces objets ?

    Merci pour toute aide.

    Jean-Luc

    EDIT : Quelle version de windev ?

  2. #2
    Membre expert
    Avatar de Emmanuel Lecoester
    Profil pro
    Inscrit en
    Février 2003
    Messages
    1 493
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Février 2003
    Messages : 1 493
    Points : 3 266
    Points
    3 266
    Par défaut
    piste trouvée avec google

    Checkbox1[i].value=blabla
    Emmanuel Lecoester
    => joomla addict.

  3. #3
    Candidat au Club
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Novembre 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2008
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Résolution pour les Check Box
    Bonjour, à force de chercher à travers le NET, j'ai trouvé la solution suivante :
    Tout d'abord sur les Checkbox ou tout autres objet de ce type il y a 2 types de recherche, une dans les formulaires (Dans le cas d'une création de formulaire avec ces types d'objet) et une seconde dans le cas où ces objets sont ajoutés simplement dans la feuille Excel.
    Pour l'instant je me suis focalisé que sur le 2ème type.
    Un autre point important: dans le cas où Excel nomme automatiquement ces objets lors de leur création, sous 2003 il porte le nom de Caseàcocherxx où xx est un numéro de création. Il est impossible d'atteindre ces objets via OLE avec ces noms. Il faut transformer les noms en 'Check Box xx' Attention ne pas oublier les espaces.

    Exemple qui fonctionne bien en Windev :
    zone contient le nom de l'objet défini dans Excel (En français)

    Remplacer ce nom par la version anglaise :

    zone=Remplace (zone,"Caseàcocher","Check Box ",SansCasse)

    valeur est une chaine caractère qui contiendra "1" si la case à cocher est active. Toute autre valeur peut être considéré comme case non cochée :

    valeur=x1>>ActiveSheet>>Shapes(zone)>>controlformat>>value

    Pour l'instant je n'ai pas trouvé de solution pour les ZoneCombinées qui doivent être une List Box ou une Combo Box ? Je pense que la syntaxe doit être a même mais l'objet n'ai jamais trouvé lors de mes essais .

    Toute aide serait bienvenue sur ce type d'objet ...

    Cdlt Jean-Luc

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Windev OLE Excel Automation Hyperliens
    Par Thibodeau dans le forum WinDev
    Réponses: 4
    Dernier message: 09/12/2014, 16h32
  2. [OLE Excel] Aller jusqu'à la dernière cellule rempli
    Par JBrek dans le forum API, COM et SDKs
    Réponses: 9
    Dernier message: 07/08/2009, 19h21
  3. Manipulation d'un Objet OLE Excel ?
    Par NiKro75 dans le forum VBA Access
    Réponses: 10
    Dernier message: 05/07/2004, 17h43
  4. [OLE Excel] Récupérer une colonne d'un coup
    Par Nemerle dans le forum C++Builder
    Réponses: 2
    Dernier message: 17/05/2004, 15h56
  5. [OLE Excel] Erreur
    Par JBrek dans le forum API, COM et SDKs
    Réponses: 9
    Dernier message: 23/03/2003, 18h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo