Auto it - Excel - Web

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Furyy
Niveau 1
Niveau 1
Messages : 4
Enregistré le : mar. 09 juil. 2019 09:30
Status : Hors ligne

Auto it - Excel - Web

#1

Message par Furyy » mar. 09 juil. 2019 11:09

Bonjour,

Étant vraiment débutant sur Autoit, je sollicite votre aide.

Dans le cadre d'une correction comptable, toute les semaines je fais plus de 2h de manips à la main.
Je me suis dis qu'il y avait forcément un moyen et j'ai découvert autoit.

Pour expliquer ce que je fais :

- J'ai un fichier excel dans lequel il y a les commandes à corriger.
- Chaque commande est rattachée à un magasin.
- Chaque magasin est rattaché à un projet (ce qui n'est pas bon donc je corrige en gros le projet des magasins.. non il n'y a pas de moyen de corriger par magasin)
- Je dois donc copier le numéro de commande, ouvrir une application interne à l'entreprise, coller le n°, attendre le chargement, mettre dans une case le nouveau projet, valider, attendre le chargement et recommencer avec la commande suivante. Cela pour tout les magasins.

Je ne sais pas comment procéder.
Pouvez vous m'éclairer svp ?

merci d'avance

Avatar du membre
scorp84
Niveau 7
Niveau 7
Messages : 345
Enregistré le : mar. 04 nov. 2008 21:51
Localisation : Avignon
Contact :
Status : Hors ligne

Re: Auto it - Excel - Web

#2

Message par scorp84 » mar. 09 juil. 2019 14:18

Bonjour Furvy,

Il est possible de copier des infos d'un fichier Excel et de les coller dans un autre programme.

Par exemple : https://www.autoitscript.com/forum/topi ... elcom-udf/

Autoit est capable de plein de choses mais il faudrait être plus précis sur votre demande pour que nous puissions vous aider.

Avez-vous commencé un bout de code ? Sur quoi butez-vous ?

Cordialement.

BM

Avatar du membre
DimVar
Niveau 10
Niveau 10
Messages : 781
Enregistré le : ven. 30 mai 2008 14:08
Status : En ligne

Re: Auto it - Excel - Web

#3

Message par DimVar » mar. 09 juil. 2019 16:03

Bonjour Furyy,

Comme l'a precisé Scorp84, il nous faut plus de billes pour vous aider.
A la louche je vois deux possibilités.
La premiere fastidieuse, qui controle la souris et fait les actions pour vous. Mais la gestion des timeouts (ou temps chargement) de vos appli risque d'etre compliqué à gerer.
La deuxieme, serait de faire un export, si c'est possible, de votre appli, puis travailler les données.

Mais en effet, sans plus d'infos....


Cdlt, Dimvar.
N'évoquons pas la pierre, les jeunes risqueraient d'en poire !

Furyy
Niveau 1
Niveau 1
Messages : 4
Enregistré le : mar. 09 juil. 2019 09:30
Status : Hors ligne

Re: Auto it - Excel - Web

#4

Message par Furyy » mer. 10 juil. 2019 13:51

Bonjour Scorp84 et DimVar,

Merci à vous deux d'avoir pris le temps de me répondre.
J'avais pas encore de code quand j'avais fait le sujet mais depuis, grâce à vos idées j'ai commencé à développer.
Je suis parti sur la première idée de DimVar, car la deuxième n'est pas possible. Je peux apporter des corrections seulement via une interface (application interne).
je vous met a disposition la structure de mon fichier excel et quelques captures d'écrans de l'application interne (tout en modifiant les données confidentielles.. )
je joins aussi le bout de code que j'ai commencé.
Je n'arrive pas trop a développer le côté web ..

merci encore

Cdt.
Fichiers joints
Materiel.xlsx
(56.35 Kio) Téléchargé 6 fois
Materiel.xlsx
(56.35 Kio) Téléchargé 6 fois
Correction Auto.au3
(1.46 Kio) Téléchargé 6 fois
Correction Auto.au3
(1.46 Kio) Téléchargé 6 fois

Avatar du membre
DimVar
Niveau 10
Niveau 10
Messages : 781
Enregistré le : ven. 30 mai 2008 14:08
Status : En ligne

Re: Auto it - Excel - Web

#5

Message par DimVar » mer. 10 juil. 2019 15:14

Bonjour,

Pour le coté web, cela va dependre de la maniere de t'y prendre.
Soit tu fais deplacer ta souris,
Soit tu controle le navigateur ou plus precisement les elements du site visualisés par le navigateur.

Interresse toi à FF.au3 et IE.au3. (FireFox, InternetExplorer)


Cdlt, Dimvar.
N'évoquons pas la pierre, les jeunes risqueraient d'en poire !

Furyy
Niveau 1
Niveau 1
Messages : 4
Enregistré le : mar. 09 juil. 2019 09:30
Status : Hors ligne

Re: Auto it - Excel - Web

#6

Message par Furyy » mer. 10 juil. 2019 22:49

Bonsoir DimVar,

Oui effectivement, je me suis un peu intéresséà IE.au3 mais FF.au3 ne marhce pas le include n'est pas trouvable.. une solution ?
Sinon j'aimerais plus contrôler les éléments du site visualisé plutôt que la souris, mais pareil je n'arrive pas à sélectionner un site dans la liste déroulante par exp.

Ca a l'air de tenir la route le début du code?

merci.

Cdt.

Avatar du membre
DimVar
Niveau 10
Niveau 10
Messages : 781
Enregistré le : ven. 30 mai 2008 14:08
Status : En ligne

Re: Auto it - Excel - Web

#7

Message par DimVar » jeu. 11 juil. 2019 08:40

Bonjour,

Peux tu détailler : "FF.au3 ne marhce pas le include n'est pas trouvable."
Le code semble bon.
N'évoquons pas la pierre, les jeunes risqueraient d'en poire !

Furyy
Niveau 1
Niveau 1
Messages : 4
Enregistré le : mar. 09 juil. 2019 09:30
Status : Hors ligne

Re: Auto it - Excel - Web

#8

Message par Furyy » jeu. 11 juil. 2019 10:48

Bjr,

il manque apparemment le fichier include "FF.au3" mais pas grave je le fais sur IE.
Voici le code source de la page, sauriez vous me dire comment je peux changer la valeur de la liste déroulante avec autoit ?

Merci
 [code2]<form action="/web/tompous2.php/menu/choixSite" method="post"><input type="hidden" name="_csrf_token" value="f66a6baffe582097da62ffd4ea9dbdc0" />
  <div id="header_form">
          <div class="label"><label for="site">Site</label> :</div><div class="field"><select tabindex="1" name="site" id="site">
<option value="" selected="selected"></option>
<option value="21S05">21S05 -  xxxx</option>
<option value="21S06">21S06 -  xxxx</option>
<option value="25S01">25S01 -  xxxx</option>
<option value="25S07">25S07 -  xxxx</option>
<option value="38P20">38P20 -  xxxx</option>
<option value="39S01">39S01 -  xxxx</option>
<option value="39S03">39S03 -  xxxx</option>
<option value="54S06">54S06 -  xxxx</option>
<option value="54S09">54S09 -  xxxx</option>
<option value="57P01">57P01 -  xxxx</option>
<option value="57S02">57S02 -  xxxx</option>
<option value="57S03">57S03 -  xxxx</option>
<option value="58P01">58P01 -  xxxx</option>
<option value="58S04">58S04 -  xxxx</option>
<option value="67P01">67P01 -  xxxx</option>
<option value="67S01">67S01 -  xxxx</option>
<option value="67S03">67S03 -  xxxx</option>
<option value="68S01">68S01 -  xxxx</option>
<option value="70S01">70S01 -  xxxx</option>
<option value="71S05">71S05 -  xxxx</option>
<option value="71S08">71S08 -  xxxx</option>
<option value="88S01">88S01 -  xxxx</option>
<option value="89S02">89S02 -  xxxx</option>
<option value="89S03">89S03 -  xxxx</option>
<option value="89S04">89S04 -  xxxx</option>[/code2]

Avatar du membre
DimVar
Niveau 10
Niveau 10
Messages : 781
Enregistré le : ven. 30 mai 2008 14:08
Status : En ligne

Re: Auto it - Excel - Web

#9

Message par DimVar » jeu. 11 juil. 2019 11:00

Lorque que je travaille avec les navigateurs, je ne passe par le code source. Mais grace à au3info (ctrl + shift + F6 dans Scite).
Cela permet de recuperer les elements sur lesquels positionner le focus.


[EDIT] Aide au3Info :
https://www.autoitscript.fr/autoit3/doc ... au3spy.htm
Ou encore
https://data.brains-master.com/pdf/2285 ... autoit.pdf

Cdlt, Dimvar.
N'évoquons pas la pierre, les jeunes risqueraient d'en poire !

Avatar du membre
walkson
Modérateur
Modérateur
Messages : 685
Enregistré le : ven. 12 août 2011 18:49
Localisation : Essonne
Status : Hors ligne

Re: Auto it - Excel - Web

#10

Message par walkson » jeu. 11 juil. 2019 14:49

Bonjour,
un exemple rapide basé sur https://www.autoitscript.fr/forum/portal (le combo en bas de la page) qui se rapproche de votre code source (si j'ai bien compris votre demande)
Voir les commentaires dans le code
#include <IE.au3>

Global $oIE = _IECreate("https://www.autoitscript.fr/forum/portal")
Global $oForm = _IEGetObjById ($oIE, "jumpbox") ;doit correspondre à <div id="header_form"> à vérifier
Local $oSelect = _IEFormElementGetObjByName($oForm, "f", -1) ;<select tabindex="1" name="site" id="site">
; If the Form Element name occurs more than once, specifies instance by 0-based index
;    0 (Default) or positive integer returns an indexed instance
 ;   -1 returns a collection of the specified Form Elements
Global $val
For $oElement In $oSelect ;enregistre les données du combo
ConsoleWrite($oElement.innerText & @CR);pour voir
$val = $val & $oElement.innerText & "|"
Next
StringTrimRight($val, 1) ;supprime le dernier "|"
ConsoleWrite( $val & @CR)
;==========================================================================================
#include <ComboConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <GuiComboBox.au3>
#Region ### START Koda GUI section ### Form=
Global $Form1 = GUICreate("Form1", 529, 119, 192, 124)
Global $Combo1 = GUICtrlCreateCombo("", 40, 16, 425, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
GUICtrlSetData(-1, $val, "Sélectionner un forum"); données combobox
Global $buton = GUICtrlCreateButton("ok", 50,80, 100,30)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
Global $lire
While 1
 $nMsg = GUIGetMsg()
 Switch $nMsg
         Case $GUI_EVENT_CLOSE
                 _IEQuit($oIE)
           Exit
         Case $Combo1
                 $lire = _GUICtrlComboBox_GetCurSel ( $Combo1 ) ; index sélectionné on ne peut pas lire les données à cause des espaces
                 ;éviter de choisir Sélectionner un forum, Général et autres gros titres sans chemin sinon BUG
         Case $buton
                  _IENavigate($oIE, "https://www.autoitscript.fr/forum/portal");on revient à la page de départ
                  $oForm = _IEGetObjById ($oIE, "jumpbox")
                  ConsoleWrite($lire & @CR)
                 If GUICtrlRead($Combo1) <> "Sélectionner un forum" Then
                 $oSelect = _IEFormElementGetObjByName($oForm, "f", 0)
                 _IEAction($oSelect, "focus")
                 _IEFormElementOptionSelect($oSelect, $lire, 1, "byIndex")
                 EndIf


 EndSwitch
WEnd
Cordialement,
Walkson
"Horas non numero nisi serenas " Le canon de midi

Répondre