Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

importare dati da web (Excel)

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

importare dati da web (Excel)

Postdi caimanonor » 06/09/12 13:26

ciao volevo chiedervi una cosa se era possibile, visto che importo dati da web e li aggiornano ogni minuto, posso creare un foglio excel che salva direttamente ad un orario prestabilito le modifiche?? anche se non sono vicino al pc e lo rinomina con il nome dell orario???? grazie
caimanonor
Utente Junior
 
Post: 58
Iscritto il: 04/09/12 16:50

Sponsor
 

Re: importare dati da web (Excel)

Postdi Anthony47 » 06/09/12 23:47

Prova con questo codice:
Codice: Seleziona tutto
Sub POnTime()
If Sheets("Foglio1").Range("Z1")<>"" then    '<< Vedi testo
Application.OnTime EarliestTime:= Sheets("Foglio1").Range("Z1").value,  Procedure:="Salvaf", Schedule:=False
End If
'
ReTime:
Sched = InputBox("A che ora vuoi salvare il foglio? " & vbCrLf & _
        "(formato hh:mm, es 17:35) Premi Annulla per annullare", , "17:35")
If Sched = "" Then Exit Sub
If Not IsDate(Sched) Then GoTo ReTime
Sheets("Foglio1").Range("Z1").value= TimeValue(Sched)
Application.OnTime TimeValue(Sched), "Salvaf"
End Sub


Sub Salvaf()
ThisWorkbook.Sheets("Foglio1").Range("Z1").ClearContents    '<< Vedi testo
' ThisWorkbook.Sheets("Foglio1").Copy    '<< Il Vero nome del "foglio" da salvare

    ThisWorkbook.SaveAs Filename:= _
        ThisWorkbook.Path & "PIPPO_" & Format(Now(), "yymmdd_hh-mm-ss") & ".xls", _
        FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
        ReadOnlyRecommended:=False, CreateBackup:=False

'ActiveWorkbook.Close

End Sub

La Sub POnTime PIANIFICA l' esecuzione della Sub Salvaf ad un orario impostato tramite inputbox. La devi quindi eseguire per poter impostare l' orario della pianificazione.

La Sub Salvaf salva il file corrente con un nome impostato nella macro (PIPPO_, ma lo puoi modificare) e la desinenza yymmdd_hh-mm-ss; se vuoi la data piu' leggibile puoi modificare il formato, es "yyyy-mm-dd_hh-mm-ss". Se la desinenza finale ".xls" non e' appropriata modificala.

Se INVECE vuoi salvare una copia di un foglio specifico, allora, nella Sub Salvaf:
-Elimina i due apostrofi in testa alla terza e penultima riga di Salvaf; specifica il vero nome del file da salvare
-Modifica ThisWorkbook.SaveAs etc etc in ActiveWorkbook.Save etc etc
In questo modo del foglio specificato verra' creaa copia in una nuova cartella di lavoro, che sara' salvata come detto prima e poi chiusa, tornando cosi' al file originale.

Le macro usano la cella Sheets("Foglio1").Range("Z1"); questa cella deve quindi essere non usata dai tuoi dati. Puoi ovviamente impostare una cella di un altro foglio o in altra coordinata, modificando di conseguenza "Sheets("Foglio1").Range("Z1")" in tutte le 4 posizioni.
Come scelta, se al momento del lancio della Sub POnTime questa Z1 non e' vuota allora sara' prima cancellata la precedente schedulazione pendente e poi sara' impostata la nuova.

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13895
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "importare dati da web (Excel)":


Chi c’è in linea

Visitano il forum: Marius44 e 9 ospiti