Casse tête sur l'exportation vers Excel
Stagiaire WDF
Inscrit:
01/12/2005 10:17
Post(s): 14
Bonjour

je me suis mis à WinDev 9 voila 2 semaines. Je programme un petit logiciel pour me faciliter la vie dans mon travail (je suis roboticien).

J'explique en 3 mots ce que fait mon programme.

1) Choix d'un fichier RTF
2) Recherche de valeurs numériques et affichages de celles-ci dans des champs (jusqu'ici tout va bien)
3)Je veux ensuite exporter ces valeurs dans des cellules d'une feuille modèle Excel.

J'arrive à ouvrir ma feuille excel grâce à l'exemple WD Pilotage Excel fourni dans WD9.

Par contre je me trouve confronté au problème de l'écriture dans les cellules. J'utilise la classe cExcel et la méthode "Ecrire valeur" que j'appelle correctement.

Quand je teste ma fenetre il me marque un message d'erreur qui est le suivant :



Quelqu'un peut-il me dire pourquoi j'ai ce message alors que la méthode utilisée est un exemple WD9 ?

Voici mon code :

//Copie valeur de butées dans feuille Excel
PROCEDURE Copie_cell_butées()

CExcel:EcrireValeur("D"+7, FenButées.Axe1_low)
CExcel:EcrireValeur("D"+8, FenButées.Axe1_up)
CExcel:EcrireValeur("D"+9, FenButées.Axe2_low)
CExcel:EcrireValeur("D"+10, FenButées.Axe2_up)
CExcel:EcrireValeur("D"+11, FenButées.Axe3_low)
CExcel:EcrireValeur("D"+12, FenButées.Axe3_up)
CExcel:EcrireValeur("D"+13, FenButées.Axe4_low)
CExcel:EcrireValeur("D"+14, FenButées.Axe4_up)
CExcel:EcrireValeur("D"+15, FenButées.Axe5_low)
CExcel:EcrireValeur("D"+16, FenButées.Axe5_up)
CExcel:EcrireValeur("D"+17, FenButées.Axe5_low)
CExcel:EcrireValeur("D"+18, FenButées.Axe6_up)


Merci pour votre aide

Attacher un fichier:



jpeg  capture1.jpeg (619.97 KB)
1509_438ec222e9c21.jpeg 690X230 px

Contribution le : 01/12/2005 10:29
Créer un fichier PDF de la contribution Imprimer


Re: Casse tête sur l'exportation vers Excel
Animateur WDF
Inscrit:
17/05/2004 14:21
Post(s): 382
Quel est votre code d'ouverture du fichier excel avec cexcel ?

Le message d'erreur apparait car il ne trouve pas la cellule D# du fait qu'aucun classeur ne serait ouvert ou aucune feuille d'activée.

Avez-vous sélectionner une feuille au préalable ?

Contribution le : 01/12/2005 17:33
_________________
Mbsl
Créer un fichier PDF de la contribution Imprimer


Re: Casse tête sur l'exportation vers Excel
Anonyme
Bonjour,

ça y est j'ai trouvé la solution pour ouvrir le fichier et copier des valeurs dans les cellules.
En fait dans la FenExcel de l'exemple, on ouvre le fichier \Vide.xls qui est dans le répertoire EXE du projet et j'ai mis le fichier que je voulais.

Par contre, j'ai l'erreur ci-après sur la fonction "Ouvre("Nom de la fenetre") alors que je l'utilisais avant mon problème d'ouverture de fichier excel.

D'ou cela peut-il venir ???

Mon code est juste : Ouvre(FenExcel)

Merci



Erreur produite :
Erreur à la ligne 3 du traitement Clic sur Btn_Excel.
Vous avez appelé la fonction Ouvre.
Une erreur système inattendue est survenue.
Si cet incident se produit de manière systématique lorsque vous exécutez les mêmes manipulations, il est conseillé de transmettre au Support Technique Gratuit :
- une description des circonstances de l'incident
- les lignes de code, une fenêtre ou un projet permettant de reproduire le problème
- les informations techniques suivantes

Détails techniques :

Module : WD90VM.DLL
Version du module : 9.01At
VI : 01-90023g
Adresse de base : 25E60000
Erreur système : Access violation (GPF)
EIP = 25EDBE35
OS : Windows XP ou .NET Service Pack 2(5.1.2600)


**********************************************

Informations techniques

Projet : Robotika

Dump de l'erreur du module <WD90VM.DLL> <9.01At>.

- Appel WL :
Traitement de <FenButées.Btn_Excel>, ligne <3>, thread <0>
Fonction <Ouvre>, n° de syntaxe <0>

- Niveau : erreur fatale (EL_FATAL)

- Code erreur : 1020

- Code erreur WD55 : 0

- Pas de code d'erreur système

- Pas de message d'erreur système

- Que s'est-il passé ?
Une erreur système inattendue est survenue.
Si cet incident se produit de manière systématique lorsque vous exécutez les mêmes manipulations, il est conseillé de transmettre au Support Technique Gratuit :
- une description des circonstances de l'incident
- les lignes de code, une fenêtre ou un projet permettant de reproduire le problème
- les informations techniques suivantes

Détails techniques :

Module : WD90VM.DLL
Version du module : 9.01At
VI : 01-90023g
Adresse de base : 25E60000
Erreur système : Access violation (GPF)
EIP = 25EDBE35
OS : Windows XP ou .NET Service Pack 2(5.1.2600)

- Infos de debug :
Registres :

EIP = 25EDBE35 EBP = 00E79008
EAX = 00E602B8 EBX = 00000007
ECX = 00000000 EDX = 0094D438
ESI = 009C83A0 EDI = 00924F10

Pile des appels :

[WD90VM.DLL (25E60000), 9.01At, 01-90023g ] 25EC3C80 : DeclareProxy() + 98741 bytes
[WD90VM.DLL (25E60000), 9.01At, 01-90023g ] 25F2EE54
[WD90VM.DLL (25E60000), 9.01At, 01-90023g ] 25EC3C80 : DeclareProxy() + 76464 bytes-> INVALID, stack increased by 4
[WD90VM.DLL (25E60000), 9.01At, 01-90023g ] 25EC3C80 : DeclareProxy() + 35584 bytes-> INVALID, stack increased by 4
[WD90VM.DLL (25E60000), 9.01At, 01-90023g ] 25E90BB0 : OBJ_pclGetTauxDeChange() + 32 bytes-> INVALID, stack increased by 4
[WD90VM.DLL (25E60000), 9.01At, 01-90023g ] 25E90BB0 : OBJ_pclGetTauxDeChange() + 32 bytes-> INVALID, stack increased by 4
[WD90VM.DLL (25E60000), 9.01At, 01-90023g ] 25E90BB0 : OBJ_pclGetTauxDeChange() + 32 bytes-> INVALID, stack increased by 4
[WD90VM.DLL (25E60000), 9.01At, 01-90023g ] 25EC3C80 : DeclareProxy() + 79984 bytes-> INVALID, stack increased by 4
[WD90VM.DLL (25E60000), 9.01At, 01-90023g ] 25F07FC0-> INVALID, stack increased by 4
[WD90VM.DLL (25E60000), 9.01At, 01-90023g ] 25EC3C80 : DeclareProxy() + 79616 bytes-> INVALID, stack increased by 4
[WD90VM.DLL (25E60000), 9.01At, 01-90023g ] 25EC3C80 : DeclareProxy() + 79680 bytes-> INVALID, stack increased by 4
[WD90VM.DLL (25E60000), 9.01At, 01-90023g ] 25EC3C80 : DeclareProxy() + 79664 bytes-> INVALID, stack increased by 4
[WD90VM.DLL (25E60000), 9.01At, 01-90023g ] 25EC3C80 : DeclareProxy() + 79696 bytes-> INVALID, stack increased by 4
[WD90VM.DLL (25E60000), 9.01At, 01-90023g ] 25EC3C80 : DeclareProxy() + 79744 bytes-> INVALID, stack increased by 4
[WD90VM.DLL (25E60000), 9.01At, 01-90023g ] 25EC3C80 : DeclareProxy() + 79760 bytes-> INVALID, stack increased by 4
[WD90VM.DLL (25E60000), 9.01At, 01-90023g ] 25EC3C80 : DeclareProxy() + 79808 bytes-> INVALID, stack increased by 4
[WD90VM.DLL (25E60000), 9.01At, 01-90023g ] 25EC3C80 : DeclareProxy() + 79728 bytes-> INVALID, stack increased by 4
[WD90VM.DLL (25E60000), 9.01At, 01-90023g ] 25EC3C80 : DeclareProxy() + 79824 bytes-> INVALID, stack increased by 4
[WD90VM.DLL (25E60000), 9.01At, 01-90023g ] 25E90BB0 : OBJ_pclGetTauxDeChange() + 32 bytes-> INVALID, stack increased by 4
[WD90VM.DLL (25E60000), 9.01At, 01-90023g ] 25E90BB0 : OBJ_pclGetTauxDeChange() + 32 bytes-> INVALID, stack increased by 4
[WD90VM.DLL (25E60000), 9.01At, 01-90023g ] 25E90BB0 : OBJ_pclGetTauxDeChange() + 32 bytes-> INVALID, stack increased by 4

Fonction (1,1)

- Infos attachées :
EIT_DATEHEURE : 03/12/2005 19:14:21
EIT_PILEWL :
Clic sur Btn_Excel (FenButées.Btn_Excel), ligne 3
Clic sur Suivant (FenPrincipale.Suivant), ligne 80

- Identifiant dans le .err : 1020

Contribution le : 03/12/2005 19:16
Créer un fichier PDF de la contribution Imprimer


Re: Casse tête sur l'exportation vers Excel
Animateur WDF
Inscrit:
02/03/2003 04:07
De Noisy le grand(93)
Post(s): 2745
Bonjour,

Il me semble que l'ouverture d'un fichier Excel s'effectue via la fonction :
Résultat> = xlsOuvre(<Chemin du fichier XLS>)

Contribution le : 03/12/2005 23:03
_________________
@A+
Contact (privé)......
email : drcharly@wdforge.org
[DrCharly93]
Créer un fichier PDF de la contribution Imprimer


Re: Casse tête sur l'exportation vers Excel
Stagiaire WDF
Inscrit:
01/12/2005 10:17
Post(s): 14
Bonjour,

effectivement cette commande marche bien.

En fait j'ouvre une Fenetre excel avec la commande "Ouvre(FenExcel)".

Ensuite dans l'initialisation de la fenetre Excel, j'ouvre le fichier xls voulu.

Le programme exécute toutes mes opérations (copies de cellules, etc,...) et une fois terminé, j'ai ce défaut qui apparait.

Je précise que je testais déjà mon programme avec cette fonction "Ouvre(Fenexcel)" et je n'avais aucun problème.

Je continue mon investigation.


Merci

Neospirit

Contribution le : 04/12/2005 14:29
Créer un fichier PDF de la contribution Imprimer


Re: Casse tête sur l'exportation vers Excel
Stagiaire WDF
Inscrit:
04/11/2003 13:31
De Belgique
Post(s): 42
Bonjour,

Voici un bout de code pour vous aider

// *** Instanciation de la classe Excel ***
Ex1 est un objet CExcel

// --- Ouverture du classeur / Sélection de la feuille ---
Ex1:Ouvrir(sNomXls)
Ex1:selectionnerFeuille("Liste")

sTitre = "Valeurs en portefeuille au " + dateverschaine(gsDate)
Ex1:EcrireValeur( "B2" , sTitre)

nLgn = 4

Pour i = 1 à TABLISTE..Occurrence

sIdVal = CODEVAL[i]
Ex1:EcrireValeur( "B" + nLgn, sIdVal)
Ex1:EcrireValeur( "C" + nLgn, CODE[i])
Ex1:EcrireValeur( "D" + nLgn, PAYS[i])
Ex1:EcrireValeur( "E" + nLgn, LNOMVAL[i])
Ex1:EcrireValeur( "F" + nLgn, LDEVISE[i])
Ex1:EcrireValeur( "G" + nLgn, memrecherche("ZCours", sIdVal))

// Progression de la jauge
FenJauge.ProgresJauge()

nLgn++
iter++

FIN

// --- Enregistrer le classeur actif ---
Ex1:Enregistrer()

// *** Libérer l'objet Excel ***
Ex1:Quitter()

Ferme(Fen_Jauge)
Sablier(Faux)

Contribution le : 04/12/2005 17:03
Créer un fichier PDF de la contribution Imprimer


Re: Casse tête sur l'exportation vers Excel
Stagiaire WDF
Inscrit:
01/12/2005 10:17
Post(s): 14
Bonjour,

J'ai inclus votre exemple dans mon programme et je dois dire que ça simplifie pas mal de chose. Et en plus je ne passe plus par la classe Cexcel qui est trop compliqué pour mon usage.

Je vous en remercie.

Neospirit

Contribution le : 05/12/2005 10:38

Edité par drcharly93 sur 5/12/2005 23:38:31
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant




Enregistrer votre réponse
CompteNom   Mot de passe   Authentification
Message:


Vous ne pouvez pas débuter de nouveaux sujets.
Vous pouvez voir les sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
Visualiser tous les Partenaires...
WinDev, WebDev, WinDev Mobile et HyperFile sont des marques déposées par PCSoft. |  Voter |  Legal |  Contact |   XOOPS 2.0.13.2