Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

[VBA EXCEL]-COMPILAZIONE FORM (modulo) WEB

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

[VBA EXCEL]-COMPILAZIONE FORM (modulo) WEB

Postdi simone_padula@live.it » 31/01/17 09:54

Salve a tutti,
è la prima volta che scrivo in questo forum. Grazie al vostro aiuto (leggendo molti vostri vecchi topic) ho fatto già la maggior parte del mio lavoro! :) :D Ora mi manca l'ultimo passo. Ovvero riuscire a cliccare sul "pulsante" di una specifica postazione per prenotare il posto da me scelto. In pratica con il mio pezzo di programma accedo ad Internet Explorer, compilo i campi "PIN" e "EMAIL", dopodiché dovrei solo cliccare sulla postazione di lavoro che voglio prenotare (preferibilmente il posto 48). Tutto questo deve avvenire automaticamente ad un'ora precisa, ovvero alle 18:40 dovrebbe partire la MACRO ed effettuare il tutto (anche qui mi servirebbe un piccolo aiutino). Ma il problema più grande è che, poiché dal sorgente pagina ho notato che i nomi per prenotare le postazioni sono sempre uguali, ovvero "posto", e cambia solo Value che diventa ad esempio (a seconda del posto) "48 . a", oppure "48 . d", ecc.,

COME FACCIO IO ORA A SELEZIONARE UNO SPECIFICO POSTO (mi serve sapere come completare il mio pezzo di codice!)

- Per prenotare il posto 190.d :
Codice: Seleziona tutto
<button type="image" name="posto" value="190 . d" style="height:27px;width:27px;color:white;background-color:green;"></button>


- Per prenotare il posto 48.a :
Codice: Seleziona tutto
<button type="image" name="posto" value="48 . a" style="height:27px;width:27px;color:white;background-color:green;"></button>



Grazie in anticipo a Tuttiiiiiii :lol:
simone_padula@live.it
Newbie
 
Post: 5
Iscritto il: 31/01/17 09:05

Sponsor
 

[VBA EXCEL]-COMPILAZIONE FORM (modulo) WEB

Postdi simone_padula@live.it » 31/01/17 10:24

...Continuazione Domanda... ALLEGO IL MIO PEZZO DI CODICE:

Codice: Seleziona tutto
Private Sub Workbook_Open()
Set IE = CreateObject("InternetExplorer.Application")
With IE
    .Visible = True
    .Navigate "http://pre***********************sa.php"
    Do Until .ReadyState = 4: DoEvents: Loop
    .document.All.Item("lastname").Value = "2***7"
    .document.All.Item("lamail").Value = "s.p*****@*****a.it"

    '.document.All.Item("posto").Click       QUESTO NON MI FUNZIONA!
   
    Do Until .ReadyState = 4: DoEvents: Loop
    Do While .Busy: DoEvents: Loop
End With
End Sub
simone_padula@live.it
Newbie
 
Post: 5
Iscritto il: 31/01/17 09:05

Re: [VBA EXCEL]-COMPILAZIONE FORM (modulo) WEB

Postdi Anthony47 » 31/01/17 12:38

Ciao Simone, benvenuto nel forum.
Dallo snippet html che hai pubblicato non si vede quali elementi possono essere utilizzati per individuare e segnalare il posto prescelto.
Prova a fare un loop tra tutti i tagname "button" per individuare quello il cui valore e' 48 .a (usa il testo corretto) e quando lo trovi azionalo (cosa usare dipende dal codice html).
Se cosi' non risolvi allora devi pubblicare l'url target.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 17658
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [VBA EXCEL]-COMPILAZIONE FORM (modulo) WEB

Postdi simone_padula@live.it » 31/01/17 22:58

ok... grazie Anthony. Guarda i messaggi privati. Ho inviato lì il link (per non renderlo pubblico).
Dopo, naturalmente, puoi anche rispondere qui (PER TUTTI). Grazieee ancora.
simone_padula@live.it
Newbie
 
Post: 5
Iscritto il: 31/01/17 09:05

Re: [VBA EXCEL]-COMPILAZIONE FORM (modulo) WEB

Postdi simone_padula@live.it » 01/02/17 23:22

Anthony, come scritto in privato, puoi pubblicare anche qui il link in modo da poter essere di aiuto per tutti gli utenti!
Attendo qualche tuo consiglio per la risoluzione.

Grazieee :)
simone_padula@live.it
Newbie
 
Post: 5
Iscritto il: 31/01/17 09:05

Re: [VBA EXCEL]-COMPILAZIONE FORM (modulo) WEB

Postdi Anthony47 » 03/02/17 01:03

Come detto, si tratta di ciclare tra gli item "button" fino a trovare quello col valore desiderato e cliccarlo.

Il codice corrispondente:
Codice: Seleziona tutto
Sub UniPre()
Dim IE As Object, But, I As Long
Dim flFound As Boolean
'
Set IE = CreateObject("InternetExplorer.Application")
With IE
    .Visible = True
    .Navigate "http:  /  /  a l e p h 0 7.u n i s a.it/sa lele ttu ra/i2_prenoto.php"       '<<< ELIMINARE GLI SPAZI nell' Url
    Do While .Busy: DoEvents: Loop
    Do Until .ReadyState = 4: DoEvents: Loop
    .document.All.Item("lastname").Value = "A***E"
    .document.All.Item("lamail").Value = "*******@******.it"
'    Do Until .ReadyState = 4: DoEvents: Loop
'    Do While .Busy: DoEvents: Loop
    Set But = .document.getElementsByTagName("button")
    For I = 0 To But.Length - 1
        If But(I).Value = "94 . a" Then
            But(I).Click
            flFound = True
            Exit For
        End If
    Next I
    If Not flFound Then
        MsgBox ("Posto cercato non trovato")
    End If
End With
'IE.Quit
'Set IE = Nothing
End Sub
Il codice lavora alla cieca, perche' non sono in grado di controllare l'esito positivo visto che l'accesso avviene con codice pin; sara' fatta quindi visivamente sulla sesione InternetExplorer che rimane attiva.

L'url del sito e' da correggere, come da commento nel codice

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 17658
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [VBA EXCEL]-COMPILAZIONE FORM (modulo) WEB

Postdi simone_padula@live.it » 03/02/17 16:20

Grazie Anthony,
funziona alla perfezioneeeee. Sei un mago! :D

Mentre invece se volessi compilare un forum analogo, ma selezionare da un menù a tendina??

Tipo compilare questo modulo:
http: / / a l e p h 0 7.u n i s a.it/sa lele ttu ra/pr en ot o.php

Grazieeeee ancora per tutto! :))
simone_padula@live.it
Newbie
 
Post: 5
Iscritto il: 31/01/17 09:05


Torna a Applicazioni Office Windows


Topic correlati a "[VBA EXCEL]-COMPILAZIONE FORM (modulo) WEB":


Chi c’è in linea

Visitano il forum: Nessuno e 53 ospiti