[R] UDF ExcelCom

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
tutu
Niveau 3
Niveau 3
Messages : 36
Enregistré le : sam. 01 mars 2008 16:43
Status : Hors ligne

[R] UDF ExcelCom

#1

Message par tutu »

Bonjour, j'essaye de récupérer les données des cellules d'un classeur excel créé avec openoffice ( je n'ai pas excel).

Pour cela j'utilise l'udf excelcom : http://www.autoitscript.com/forum/topic ... celcom-udf

voici mon code:

Code : Tout sélectionner

#include <ExcelCom_UDF.au3>
;#RequireAdmin
global $ouvrefichier
$ouvrefichier=_ExcelBookOpen("d:\monfichier.xls",1)
If  @error > 0 Then
    msgbox(0, "ERREUR","ERREUR...."&@error)  
EndIf

$ligne=7
$colonne=2

$val = _ExcelReadCell($ouvrefichier, $ligne,$colonne)

msgbox(0,"",$val)
J'obtiens alors une erreur 1... d'après le msgbox et rien ne se passe.

J'aimerais donc savoir si il est nécessaire d'avoir absolument excell et sinon j'aimerais comprendre l'erreur.

Merci à vous.
Modifié en dernier par tutu le sam. 15 oct. 2011 14:19, modifié 1 fois.
xavierha
Niveau 3
Niveau 3
Messages : 31
Enregistré le : mer. 21 sept. 2011 23:08
Localisation : Atlanta, GA
Status : Hors ligne

Re: [...] Fonction udf excelcom

#2

Message par xavierha »

Au moins deux possibilites:
Si c'est sous Vista ou Windows7, ca peut etre un probleme de droits insuffisants. Essaie de demarrer le script comme administrateur.
Aussi si le script est compile en x86, et Windows est 64 bits, les objets en 64 bits ne vont pas marcher.
tutu
Niveau 3
Niveau 3
Messages : 36
Enregistré le : sam. 01 mars 2008 16:43
Status : Hors ligne

Re: [...] Fonction udf excelcom

#3

Message par tutu »

Je suis bien sous vista mais pas en 64bit, j'ai déjà testé avec la ligne #RequireAdmin d'activé. J'ai le même problème.
xavierha
Niveau 3
Niveau 3
Messages : 31
Enregistré le : mer. 21 sept. 2011 23:08
Localisation : Atlanta, GA
Status : Hors ligne

Re: [...] UDF ExcelCom

#4

Message par xavierha »

Tu peux essayer ceci (Ma machine est en Anglais, et ma traduction ne sera peut etre pas parfaite, mais si tu ne comprends pas, j'essaierai d'ameliorer mes explications):
1) Clique sur Demarrer, et demarre le panneau de controle. Dans le panneau de controle, double clique sur Outils Administratifs, et dans les outils administratifs, demarre services de composants (Component Services).
2) La fenetre de services de composants, choisis sous la racine Services de composants/Ordinateurs/DCOM Config
3) Cherche l'icone de MS Excel et fais un clic droit dessus, dans le menu de contexte qui apparait, choisis Proprietes, et dans la fenetre Proprietes, l'onglet de securite.
4) Dans la section Permissions de lancement et d'activation, choisis Personnaliser, et appuie sur le bouton Editer. Ajoute l'utilisateur Invite (guest) et appuie sur le bouton Verifier Noms. Clic sur OK. Ensuite donner toutes permissions a l'utilisateur Invite, et clic sur OK.
Bonne chance
tutu
Niveau 3
Niveau 3
Messages : 36
Enregistré le : sam. 01 mars 2008 16:43
Status : Hors ligne

Re: [...] UDF ExcelCom

#5

Message par tutu »

Je te remercie mais je n'ai pas trop compris comment je peux trouver l'icone d'excel dans la liste des services ( j'ai trouvé le service lanceur de processus serveur dcom) ( en plus pour rappel je n'ai pas excell !!!)


Du coup je me suis orienté sur un udf openoffice, je sais pas encore si il marche: http://www.autoitscript.com/forum/topic ... en-office/
xavierha
Niveau 3
Niveau 3
Messages : 31
Enregistré le : mer. 21 sept. 2011 23:08
Localisation : Atlanta, GA
Status : Hors ligne

Re: [...] UDF ExcelCom

#6

Message par xavierha »

Oh, si tu n'as pas Excel, la creation de l'objet Excel.Application va echouer, et c'est ce que _ExcelBookOpen appelle...
Avatar du membre
jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 2284
Enregistré le : lun. 30 mars 2009 22:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: [...] UDF ExcelCom

#7

Message par jchd »

Pour info, le post auquel il est fait référence est la source de ce qui est devenu l'UDF Excel standard, qui a considérablement évolué depuis ce moment.
Par ailleurs, pour employer des objets/méthodes COM Excel il "vaut mieux" qu'Excel soit installé.

Ceci dit, il est concevable qu'en installant le lecteur Excel (si ce produit est encore disponible) MS installe avec une couche COM permettant de piocher en lecture dans un fichier Excel, mais perso j'en doute beaucoup.

Sinon, sauvegarder le fichier en XML et mettre les mains dans le cambouis. Il existe une UDF XML. Bonne chance !
Comme l'écrivait très justement Roger Binns :
"If your question is generally about dealing with XML then I suggest fixing a
large amount of padding on the table in front of you right in the spot where
you will be repeatedly banging your head."
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
tutu
Niveau 3
Niveau 3
Messages : 36
Enregistré le : sam. 01 mars 2008 16:43
Status : Hors ligne

Re: [...] UDF ExcelCom

#8

Message par tutu »

Et bien à prioris l'udf d'open office fait l'affaire, il faut juste penser à le modifier et retirer les msgbox des fonctions.
Avatar du membre
jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 2284
Enregistré le : lun. 30 mars 2009 22:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: [R] UDF ExcelCom

#9

Message par jchd »

Quel UDF Open Office ? Est-ce de ce post dont tu parles ?
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
tutu
Niveau 3
Niveau 3
Messages : 36
Enregistré le : sam. 01 mars 2008 16:43
Status : Hors ligne

Re: [R] UDF ExcelCom

#10

Message par tutu »

Répondre