Excel: Esecuzione di Excel su Windows Task Scheduler Una cosa che viene di volta in volta sulle bacheche di Excel è Come faccio a eseguire Excel senza aprirlo In sostanza lo sviluppatore vuole eseguire Excel di programmazione come un server COM, senza alcun intervento umano. Ho visto gente raccomandano Excel. exe workbook. xls e fare in modo che la macro che si desidera eseguire è chiamato dall'evento WorkbookOpen (). Il problema con questa tecnica è il controllo. Lo sviluppatore Excel avrebbe dovuto utilizzare la metodologia macchina a stati che ho citato in precedenza. che è solo un dolore al. Credo che il modo migliore per eseguire Excel senza l'interazione dell'utente utilizza un controllore Excel. Un controllore Excel è uno script, DLL o eseguibile che utilizza l'interfaccia Eccelle COM. Questa tecnica risponde anche alla domanda di Come si esegue Excel da un programmatore in modo ho intenzione di rispondere alla domanda più complicata di come eseguire Excel da Microsoft Task Scheduler. 1) Avete bisogno di un controllore Excel. Se siete agio con VBA quindi probabilmente youll essere confortevole con VBS. (Visual Basic Script). Ecco alcuni esempi di codice che uso per controllare e automatizzare una cartella di lavoro di Excel: 2) Nel codice di Excel controller sostituire YourWorkbook con il nome della cartella di lavoro che si desidera aprire e sostituire YourMacro con il nome della macro che si desidera eseguire. 3) Avviare il controllore Excel VBS con cscript. exe NON wscript. exe. Allora supponiamo avete chiamato i RunExcel. vbs di script, quindi si eseguirà utilizzando RunExcel. vbs cscript. exe. (Se si effettua YourWorkbook e parametri di input YourMacro allora lo script RunExcel. vbs può eseguire qualsiasi macro in qualsiasi cartella di lavoro perché si può semplicemente passare che le informazioni in sulla riga di comando.) 4) Una volta che hai il controller Excel e cartella di lavoro testato in modo che si fa ciò che si vuole, è possibile utilizzare Microsoft Task Scheduler per eseguire RunExcel. vbs cscript. exe automaticamente per voi. Ho trovato un tutorial qui: iopusguideswinscheduler. htm Se il controllore Excel è uno script o un file eseguibile, lo sviluppatore ha la possibilità di passare i parametri per il controller che può essere utilizzato per inizializzare le celle nella cartella di lavoro prima dell'esecuzione della macro. Ovviamente, utilizzando la Excel COM API lo sviluppatore può davvero fare alcune cose pulite espandendo sulla struttura di base che ho fornito. Spero che questo aiuta qualcuno e se avete aggiunte pulito a questo, non esitate a aggiungerli nella sezione commenti. 54 Commenti: Eccellente punta. Grazie JC Mi piace molto il tuo post troppo. Im intenzione di usarlo, e ti faccio sapere come va. Gday, Im nuovo a questo genere di cose e im avere un paio di problemi. Devo eseguire Excel in background (il log in) ed eseguire una macro che avverte l'utente di taratura della macchina date di scadenza per quel particolare settimana. Ive ha usato il codice per aprire il file Excel (che è impressionante tra l'altro) solo chiedendo dove andare per il prossimo. I cant sembrano ottenere l'esecuzione di macro, e poi c'è il problema di visualizzazione esso (non ho accesso a Visual Basic solo Excel) qualche consiglio sarebbe impressionante. Grazie ancora per avermi iniziato Sembra che la chiamata alla macro, utilizzando questo codice: strMacroName strPath UpdateRLTbyDay2.xls SAPEntry. RecalculateRLT è in qualche modo imperfetto. Ive ha provato tutti i tipi di combinazioni diverse di citazioni quotesdouble, ma non può ottenere lo script per eseguire la macro. Hai qualche suggerimento Grazie in anticipo per l'aiuto. Si dovrebbe prima guardare i risultati che avete in strPath. strPath deve contenere la directory in cui si trova la cartella di lavoro di Excel. Successivamente, il formato strMacroName pretende corrisponde a quello che ho avuto nello script di esempio. strMacroName strPath UpdateRLTbyDay2 SAPEntry. RecalculateRLT Le differenze sono la rimozione del prolungamento. xls e l'aggiunta della chiusura sola offerta a fine UpdateRLTbyDay2. Tutte le istanze della cartella di lavoro di Excel eseguito con un'istanza di Excel applicazione, in modo che quando si desidera avviare una macro, si deve dire esattamente quale Excel macro mettendo in un percorso completo per la macro. Il trucco è sempre il percorso corretto. Vedere Dans commento e la mia risposta sopra. Forse che vi aiuterà a ottenere la vostra corsa macro. Per quanto riguarda la visibilità, il controllore Excel in questo esempio viene scritto per nascondere Excel da parte dell'utente perché ho originariamente scritto per eseguire Excel in modalità remota. Youll desidera rimuovere poche righe dallo script che disabilita l'interfaccia utente e, eventualmente, aggiungere una riga per rendere l'istanza di Excel visibile. Rimuovere questa sezione: Elementi Disabilita Excel UI myExcelWorker. DisplayAlerts Falsi myExcelWorker. AskToUpdateLinks False myExcelWorker. AlertBeforeOverwriting False myExcelWorker. FeatureInstall msoFeatureInstallNone E se questo non ottiene Excel visibile per te, poi guardare aggiungendo: Grazie mille. sei bello per aiutare domande solo uno straniero che chiede. Ive ha provato la sintassi youve suggerito (dopo l'aggiunta di una per la linea di continuazione), ma lo script restituisce un errore come: La macro C: TempUpdateRLT3Sheet1.RecalculateRLT3 non può essere trovato. Così, sembra almeno una sola offerta è ridondante, su tenendo fuori, ho ancora un percorso non trovato errore: La macro C: TempUpdateRLT3Sheet1.RecalculateRLT3 non può essere trovato. Con questa sintassi string path e semplicemente doppio clic lo script vbs in Windows: strMacroName strPath UpdateRLT3Sheet1.RecalculateRLT3 Grazie ancora per eventuali suggerimenti. PS - Mi piace la tua blogspot (tanto Ive ha creato il mio tipo di nudo in questo momento: dpgnothing. blogspot) Mi puoi inviare il file di Excel e lo script Non è facile il debug questa via commenti al blog. Utilizzare l'indirizzo e-mail a krgreenlee comcast dot net. Ho modificato la linea dove il percorso macro è costruito in modo tale che viene utilizzato solo il nome della macro (dal momento che il file era già aperto). Ho il mio macro in un modulo, e questo codice funzionato. strMacroName strPath YourWorkbook Sheet1.YourMacro Grazie per il vostro aiuto Questo è il synatx corretta: strMacroName strPath MyWorkbook MyReport Notare la singola citazione si apre davanti la cartella di lavoro e slash estremità destra dopo il nome cartella di lavoro. La pubblicazione originale mancava la citazione finale. Per provare aperto due cartelle di lavoro e tenta di eseguire una macro in wkbA da wkbB. Questo è il come si desidera la stringa da cercare (ad es. WrkA. xlsmyMacro) Questo è incredibile. Im così felice mi sono imbattuto in questo. Grazie tanto per questo distacco e di essere quindi disponibile. Questa è la mia prima volta con VBS e le tue istruzioni erano abbastanza semplice. Una domanda: So che hai disegnato questo per eseguire Excel dietro le quinte. Tuttavia, la macro che chiamo crea un nuovo file. Sapete di un modo per rendere il file creato visibile Se io non chiudere il file nella macro, che si soffermerà dietro le quinte che non hanno accesso ad essa solo uccidendo il processo excel. exe mi permette di chiuderlo. Sono un po 'confuso. È il file è stato creato un file Excel L'idea alla base del controllore Excel è che è possibile controllare Excel per assicurarsi che si comporta il modo in cui avete bisogno di. Se il file è stato aperto da un'istanza di Excel allora deve essere chiuso dal istanza di Excel. Vorrei suggerire la creazione del file in Excel, chiudere il file, quindi chiudere Excel. Questo dovrebbe ottenere sia il file e l'istanza di Excel chiuso. (Ho visto riferimenti sulle schede in cui persone suggeriscono che Excel è lento a chiudere. Ma alla fine vicino se chiudere tutto giù in modo corretto.) Dopo che avrete chiuso Excel verso il basso, mentre nel controller, aprire il file e ripristinare myExcelWorker. Visible Vero. Spero possa aiutare. Ciò è impressionante Ive stato voler automatizzare, su una base a tempo, una macro di Excel. Grazie gazillion. La macro ho concoted utilizza il software iMacros iOpus (si fa riferimento proprio tutorial) per estrarre i dati in un file ASCII piatta. La macro continua elaborando in Excel e Access. Questo è grande Grazie Kim per un grande articolo del genere. Non ho mai programmato prima e anche io ero in grado di seguire il tutorial. Potete per favore aiutarmi con un problema non sono in grado di risolvere. Si prega di nudo in mente io sono un novizio totale. Utilizzando il codice che ho impostato l'avvio di una cartella di lavoro e l'esecuzione di una macro. La macro loop ogni 10 secondi, ma se un altro lavoro di Excel si apre (la macro) posso dirvi che cartella di lavoro di operare i comandi. Questo è il mio estremamente semplice macro: BBStream Sub () Sheets Fogli (BL).Select Cells. Select Selection. Copy (pagina web).Selezionare Cells. Select Selection. PasteSpecial incolla: xlValues, Operation: xlNone, SkipBlanks: Falso, trasporre: False Application. ScreenUpdating vero Application. OnTime Now () TimeValue (00:00:10), BBStream La macro solo copia e incolla i valori da un foglio (BL) ad un altro (pagina web). 1. Voglio la macro per lavorare solo sulla cartella di lavoro chiamato WebUpdate, anche se un'altra cartella di lavoro viene aperta. 2. La cartella di lavoro di continuare a lavorare in background, anche se Excel è aperto e poi chiuso. 3. Eventuali altri suggerimenti sarebbero grandi. Se si può aiutare che sarebbe grande e molto apprezzato. Il modo migliore per risolvere questo problema è quello di utilizzare percorsi completi ovunque. Guardate alcuni dei commenti che precedono questo in cui si parla della necessità di utilizzare percorsi completi quando si fa riferimento oggetti di Excel. Inoltre, se si esegue l'istanza di Excel come un server COM automatizzato allora non dovrebbe essere avere questi problemi perché ogni istanza automatizzato Excel viene eseguito nel proprio spazio di processo. Così si può essere modelli mancanti. Scusa per il ritardo della risposta. Sono stato in grado di apportare le modifiche necessarie, non appena ho usato il tuo consiglio. Grazie Kim per tutto l'aiuto. po 'meravigliosa di codifica. Molto utile, grazie v. Più di tanto. Per quanto riguarda il tutorial suggerito su come eseguire gli script, non potevo ottenere la mia per dare il via correttamente attraverso chiamando cscript. exe così ho fatto il browser programma direttamente alle RunExcel. vbs e che ha funzionato, invece. Grazie molto. Ian mi piacerebbe fare un documento di scadenza promemoria in Excel e ha bisogno di una macro che viene eseguito in background controllando tutte le date di scadenza, allora email dettaglio alla mia e-mail di tutti i giorni. E 'possibile costruire questo in base al codice Sì. Penso che possa essere fatto. Probabilmente si desidera inviare l'e-mail dal vostro macro di Excel, ecco un link che dovrebbe iniziare: j-walkssexceltipstip86.htm Pensate lo scheduler e script come il guscio che la macro di Excel è in esecuzione in - Il pianificatore prende il via. lo script in un tempo stabilito di tutti i giorni. - I carichi di script e comandi di Excel (in modo da poter fare la configurazione e garantire Excel chiuso). - E la macro è dove il vostro lavoro specifico è fatto. Grazie mille Kim, questo aiuta veramente. Ciao Kim, mi piace il tuo codice VBS ed è stato in grado di applicare a molti dei miei programmi. Ho bisogno di un certo aiuto però. Ho bisogno di abilitare un componente aggiuntivo tramite VBS. Se porto in su Excel come uno stand-alone, questo Add-in è visibile, altrimenti se eseguo questo codice VBS, non lo è. Qualsiasi aiuto è molto apprezzato. Ancora una volta, grazie per quel bel pezzo di codice. Im veramente dispiaciuto, ma io sono così occupato in questo momento non ho tempo di ricerca questo. Non vedo ogni momento libero a tutta l'apertura fino a metà maggio. Se a capire questo fuori si prega di inviare ciò che hai imparato. altrimenti Ill lasciare questo nella mia coda fino a quando ho un po 'di tempo. Grazie tuo post è impressionante Basta avere un piccolo problema. Non posso accedere al file starightway..when ho provato ad aprire, si dice lettura solo come posso spostare il file da sola lettura per l'accesso normale Ho lo stesso problema che aveva LetMeDoIt. Sto usando un datasource proprietaria tramite un plugin di Excel. attraverso lo script la macro funziona bene, ma pretende molto ottenere dati popolata perché pretende di identificare il addin. Ho cercato internet senza successo. Se hai trovato una soluzione. Per favore mi faccia sapere. Questo è un pezzo impressionante di codice. Grazie una tonnellata. Sono di fronte una piccola sfida anche se durante l'esecuzione di script che ogni 30 minuti. Si dice che il file è già aperto. Anche quando provo ad aprire il file manualmente non mi permette fino a che non uccidere l'istanza Excel dal task manager. Può questo codice essere utilizzato quando il file è aperto sugli schermi in modo che i vbs mantiene i dati incollare ogni 30 minuti e mantiene salvarlo. Ci sono due possibilità che vengono in mente. Il primo è che il programma Excel è lunga esecuzione, nel qual caso è necessario sia a) accelerarlo b) distribuire il lavoro ad altre macchine (vedi Digipede Technologies) c) aumentare l'intervallo tra le esecuzioni. L'altra possibilità è che non si è in modo pulito uscendo sia lo script o il programma Excel. Leggi il seguente post, che è in 5 parti. si dovrebbe trovare alcuni suggerimenti lì. Grazie Kim. Puoi pls suggerire un tweak a questo codice in modo che posso usare questo su file aperti pure. EG) Ho un file excel che deve essere aggiornato ogni 30 minuti da un feed che ottengo dal server. Ho bisogno di scrivere uno script di aggiungerlo alla operazione pianificata che può continuare a dati di incollare ogni 30 minuti su un determinato foglio nel file excel. Sono finora in grado di tirare il feed dal server automaticamente, ma non sono in grado di incollarlo automaticamente utilizzando VBS havent lavorato con Excel in pochi anni. come si può vedere questo post è stato creato poco fa. Così Im non in grado di fornire tutti i suggerimenti. In bocca al lupo. Questo post ha un serio lunga vita. Avevo creduto che ci fosse un parametro di riga di comando x per eseguire una macro per Excel, ma sono rimasto deluso per scoprire che è solo per MS Access. Ho usato il codice, ma parametrizzati in modo che qualsiasi foglio di calcolo può essere eseguito con una macro incorporato. Ci vuole ora due parametri, il primo è il percorso completo e il nome del file e il secondo è il nome della macro. La riga di comando, se inserito in un file batch è F: runexcel. vbs - Full percorso cartella di lavoro e nome - - Macro Name-. Repace i valori come richiesto e assicurarsi che ci sia uno spazio tra i tre elementi. Evitare inoltre di utilizzare i nomi delle directory e dei file con gli spazi. Lo script verrà eseguito la cartella di lavoro e quindi salvarlo con un nuovo nome. Il nome è il nome originale con AAAAMMGG alla data timbro il file aggiornato. L'applicazione presenta il rapporto azione di acquisto di un sistema MRP. Il codice che ho usato è al di sotto. Eventuali osservazioni e miglioramenti sarebbe apprezzato. Questo è stato un primo tentativo di scripting. Molte grazie a Kim Greenlees per l'articolo originale. 39 Creare un WshShell per ottenere la directory corrente Dim WshShell Set WshShell CreateObject (quotWScript. Shellquot) Se (Wscript. Arguments. Count lt 2) Poi Wscript. Echo quotRunexcel. vbs - Parametro Obbligatorio missingquot WScript. Quit End If 39retrieve gli argomenti Dim strWorkerWB WScript. Arguments strWorkerWB (0) Dim strMacroName strMacroName WScript. Arguments (1) 39 Creare un Excel esempio Dim myExcelWorker Set myExcelWorker CreateObject (quotExcel. Applicationquot) 39 Disabilita Excel elementi dell'interfaccia utente myExcelWorker. DisplayAlerts falsi myExcelWorker. AskToUpdateLinks false myExcelWorker. AlertBeforeOverwriting false myExcelWorker. FeatureInstall msoFeatureInstallNone 39 Aprire la cartella di lavoro specificato nella riga di comando Dim oWorkBook Set oWorkBook myExcelWorker. Workbooks. Open (strWorkerWB) 39oN error resume next 39 Eseguire la macro di calcolo myExcelWorker. Run strMacroName se si è verificato err. number ltgt 0 Then 39 errore - proprio vicino giù. End If Err. Clear On Error GoTo 0 StrPathNameNew sostituire (UCase (strWorkerWB), quot. XLSquot, quotquot) amp quotquot amp anno (Date ()) amp destra (mese quot0quot amp (Date ()), 2) amp destro (quot0quot giorno amp (date ()), 2) amp quot. XLSquot oWorkBook. SaveAs StrPathNameNew oWorkBook. Close 39 Pulire e spegnimento Set oWorkBook Nulla 39 Dont Quit () Excel se ci sono altri casi di Excel 39 in esecuzione, uscire () si spegnerà quelli verso il basso anche se myExcelWorker. Workbooks. Count 0 Then myExcelWorker. Quit End If Set myExcelWorker Nothing Set WshShell niente che sono i migliori. Grazie per il post. Come le persone diagnosticare il suo VBscript VS doesn39t sembrano farlo. Ti ragazzi utilizza Microsoft Script Editor Beh, it39s stato molto tempo da quando I39ve fatto questo lavoro. Ma penso che ho usato Visual Studio. Ho fatto una ricerca rapida ed alzato questo link support. microsoftkb308364. Grazie per questo post. Mi ha aiutato a raggiungere il mio obiettivo per oggi in poco tempo. Ho aggiunto un po 'di codice per gestire i parametri da VBS a Excel subroutine. Ho inviato il codice qui ero al Inet quando ho improvvisamente perso i miei files excel. Per mia fortuna un amico mi ha suggerito in rapida risoluzione. Aveva ragione, la ragione di esso risolto i miei guai per un minuto e assolutamente facile. Per di più l'utilità può aiutare in questo guaio anche - strumento di riparazione di Microsoft Excel. Può il tuo eseguire una macro per aggiornare una tabella pivot che sta importando i dati da SQL Tutto sembra funzionare tranne l'aggiornamento di aggiornamento secondaria () 39 39 aggiornamento Macro 39 Macro registrato 1.282.010 di John 39 39 Fogli (quotSummaryquot).Select Range (quotA6quot). selezionare i ActiveSheet. PivotTables (quotPivotTable1quot).PivotCache. Refresh ActiveWindow. SmallScroll Down: 6 Range (quotA23quot).Select ActiveCell. FormulaR1C1 quotNOW () quot Range (quotA24quot).Select End Sub Questo è così cool. Grande punta. Per quanto riguarda commento Tim P.39s su x per i parametri della riga di comando per Excel, è corretto, cioè per l'accesso. Tuttavia, può essere fatto in Excel ma non it39s per principianti. Qui è il mio post: vbforumsshowpost. phpp4027694amppostcount13 Il filo pieno: vbforumsshowthread. phpp2234990 Excel macro di automazione dalla riga di comando - brillante. All'inizio ho pensato in modo diverso, ringrazio per l'aiuto in questione. Ciao, il mio script VBS sta funzionando bene sul mio loacl mechine ma non funziona sul mio server mechine Mylocalmechine: Microsoft Windows XP versione 5.1.2600 mio servermechine: Microsoft Windows versione 6.1.7600 di sotto è il mio script VBS Set oExcel CreateObject (quotExcel. Applicationquot) oExcel. Visible false oExcel. Application. AutomationSecurity 1 oExcel. Application. ScreenUpdating false oExcel. Application. DisplayAlerts false Set objWorkbook oExcel. Workbooks. Open (quotC: anumalatest. xlsquot) oExcel. Run quotRunMultiplequot objWorkbook. Save objWorkbook. Close Set objWorkbook Nothing Set oExcel Nulla I39m urtare questa discussione in vita :) Altho il post originale è abbastanza vecchio le informazioni in esso è ancora verry prezioso, e in primo luogo fuori tutto voglio ringraziare ogni singola persona che ha contribuito ad essa, mi ha aiutato sooo molto l'unico problema che ho ancora è che quando ho eseguito lo script VB Kim ha fatto (la vostra awsome per renderlo. D) si apre Excel sullo sfondo wich è buono ma non lo si chiudono automaticamente e salvare le modifiche che sono state fatte eseguendo la macro. Spero che qualcuno sia in grado di puntare nella direzione giusta di me. I39m non intenzione di avere in qualsiasi momento fino a maggio per indagare questo per voi. Vorrei suggerire che si esegue il foglio di calcolo in primo piano per vedere se si ottiene un arresto pulito verso il basso. Se l'arresto è pulita, allora vorrei suggerire guardando situazioni di errore che potrebbero pop una finestra. Le eventuali finestre di dialogo che vengono in su determinerà l'impossibilità per il foglio di calcolo per l'esecuzione in background. Microsoft afferma che, anche se si disattiva tutti i componenti dell'interfaccia utente, è doesn39t significa che il software won39t tenta di avviare alcuni. Nel mese di maggio sarò guardando productizing questa soluzione. Se si desidera entrare in contatto con me tramite il mio indirizzo di posta elettronica sarei interessato nei vostri pensieri. Grazie per la risposta su un tale breve preavviso ho scavato intorno e ho trovato la risposta al mio problema, purtroppo abbastanza ha sollevato un altro haha parte Set oWorkBook Niente non chiudere il foglio di Excel come si dovrebbe pensare. Ho messo un oWorkBook. Close dopo oWorkBook. Save e ora si chiude. La parte triste è che il mio macro non è beeing excecuted. La macro ha bisogno di inserire del testo da file txt in altre cartelle di lavoro e quindi unisce i dati nella cartella di lavoro principale. La parte brutta è che ho ereditato la macro da ex collega di lavoro in modo non ho fatto da sola, rende più difficile capirlo :( Kim, io non sono un programmatore. Mi piace questo post, ma ho capito solo il 50 . ho bisogno di quanto segue e sono disposto a pagare per questo: uno script programmato che chiama una macro di Excel che salva la cartella di lavoro aperta (s) in Excel (in entrambi i. xlsx e. csv non custodito) ogni minuto che non posso avere il funzionamento macro. continuamente in Excel perché impedisce la mia cartella di lavoro di aggiornare i prezzi di mercato Grazie, Kai Kai (at) Ingwersen Grazie per questo script -.. molto utile ho anche avuto difficoltà ad ottenere l'esecuzione della macro fino a quando ho specificato il percorso completo del file VBS , poi ha funzionato come un fascino. Ciao Kim del 2006, spero la vostra auto futuro ricorda ancora questo blocco di codice impressionante che ci sto cercando di scrivere uno script bat completamente automatizzato che chiama i tuoi VBS, a sua volta, l'esecuzione di una macro in Excel dato . attendere che. una sola lettura cartella di lavoro che viene sostituito ogni giorno oltre il mio controllo (così ho can39t salvare una macro in esso). La macro ha bisogno semplicemente di salvare alcune colonne in un nuovo file CSV (banale). I39m di utilizzare il Workbookquot Macro quotPersonal salvare la macro tale che può essere chiamato su qualsiasi altra cartella di lavoro compresa la lettura sola. Questo è anche possibile, o dovrei dimenticare e utilizzare PowerShell con l'API OLE DB invece Caro Kim, WOW, che il talento Sarebbe possibile per me a pagare per i vostri servizi Ho un app Excel che, una volta aperto, si apre altre due applicazioni , ciascuno in casi di Excel separati. Ho bisogno di eseguire l'applicazione principale alle 6:30 del mattino ogni giorno di negoziazione. Poi ho bisogno di salvare e chiudere l'operazione a 16:00 ogni giorno mandandomi una mail che indica quanti soldi ho fatto mentre sono in spiaggia o in vacanza a Parigi. Il software è una versione mai reso di una piattaforma di un giorno di negoziazione in grado di vedere nel futuro. Essere in grado di automatizzare questo software è il compito unica rimasta per la sua corretta distribuzione. Sono molto impressionato con il tuo codice e vedo l'ora di fare affari con voi. Stephen Druley starymanatt Eccellente Questo codice ha funzionato come un fascino per me. Grazie mille per aver condiviso questo. Tuttavia, io sono in esecuzione in un problema. Ho creato un file. bat per eseguire questo script VB che si chiama via pianificazione di Windows su Windows 2008. funziona perfettamente, a parte dopo la. xlsm viene aggiornato con i dati, il processo EXCEL. exe non ottiene chiusi. E di conseguenza, il foglio di lavoro rimane bloccato. C'è un modo per terminare il processo di Excel senza dover uccidere manualmente Lo script VB su se stessa funziona perfettamente, ma come un'operazione pianificata il file xlsm non viene aggiornato e il excel. exe e compiti WScript rimane attiva. È ther una soluzione Grazie Kim per questo articolo. Questo e 'esattamente quello che stavo cercando. Istruzioni sono molto chiare in questo articolo. Posso mostrare l'interfaccia utente di Excel standard dal programmatore di Windows utilizzando qualsiasi metodo o qualsiasi altra applicazione di programmazione grazie in anticipo. Solo un consiglio, se qualcuno sta avendo un problema l'esecuzione della macro. Ho cambiato il seguente strMacroName quot39quot amp strPath amp quotNAMIExceptionTemplate. xlsquot amp quotSheet1.YourMacroquot e tutto ha funzionato bene. Ciao Kim, che cosa è un controllore Excel so come scrivere VBA in Excel, ma non hanno mai sentito parlare di un controller di Excel. roba impressionante We39re bene nel 2015 ormai così quasi un decennio passavano e it39s ancora molto utile. I39m utilizzando lo script per avviare una macro in un file di Excel che a sua volta esegue una varietà di segnalazione macro39s. I39m più di una VBA-ragazzo così I39m passaggio a VBA, a questo punto, l'impostazione delle macro e filepaths come stringhe di variabili che possono essere digitati in un foglio di lavoro principale). Quando ho creato lo script VBS a decorrere dal pianificazione di Windows, ho ottenuto un errore sul strPath. Si scopre che questo era dovuto al fatto che il strPath si basa sulla directory corrente di WshShell che viene creata quoton-the-spotquot e risultati nel strPath essere impostato sulla cartella c: Windowssystem32 quando correva dal Utilità di pianificazione. I39ve rapido risolto questo impostando manualmente il CurrentDirectory di WshShell nella cartella erano lo script e il mio file di Excel si trovano dopo la creazione dell'oggetto: Dim WshShell Set WshShell CreateObject (quotWScript. Shellquot) WshShell. CurrentDirectory quotC: UsersBaasDesktopVBS testquot Dal tuo post è ancora visitato spesso, ho pensato che potrebbe essere buono per commentare in caso qualcuno urti altro in un problema simile. Link a questo post: Domande frequenti Quali sono le diverse caratteristiche tra le base, automatica, segnali di trading, i cluster di mira ecc Qui di seguito vi daremo una breve spiegazione dei diversi moduli di ELWAVE. Il modulo di base di ELWAVE include i grafici, indicatori, strumenti tecnici come ad esempio le linee di tendenza, i canali, così come la possibilità di etichettare facilmente il grafico da soli. Una volta che avete etichettato il grafico è possibile verificare la validità delle conteggio di onde, di progetto gli obiettivi di prezzo di Fibonacci e dare un'occhiata a tutti i rapporti di Fibonacci in un istante. Inoltre, il modulo di base offre la possibilità di registrare i vostri commerci in tempo reale o per testare la vostra strategia di trading simulando il passo grafico per passo. In qualsiasi momento è possibile fare clic sul pulsante Report per mostrare i risultati del tuo trading. Tuttavia, è necessario il modulo automatico per fare l'analisi delle onde di Elliott in modo completamente automatico. Questo modulo è il cuore del programma. E 'la migliore e più veloce motore di pattern recognition Elliott Wave disponibile. Il segreto dell'onda di Elliot è l'applicazione di modelli di modelli in. Ecc Quando i modelli in modelli confermano l'un l'altro ad un certo punto una sorta di effetto domino si tradurrà, che prevedere mosse di mercato con una precisione straordinaria. Questo è esattamente come abbiamo progettato e implementato il software, come un vero e proprio modello di onde di Elliott. Se si desidera aggiungere una lettura completamente automatica di alternative Elliott con il cristallo risultati chiari nella cosiddetta ispettore quotSummary, si avrebbe bisogno il modulo segnali di trading pure. Si darà una visione chiara e automaticamente monitorare i mercati per voi. Il modulo cluster di destinazione vi presenterà obiettivi tempo (tempo Clusters) e gli obiettivi di prezzo in combinazione con obiettivi temporali (Target Zone). Questo modulo include anche un processore batch in modo che sia possibile eseguire un'analisi per una lista di titoli in un unico sforzo. Questo modulo è disponibile solo se si dispone di una versione completa di fine giornata o giornata intra. Se si desidera utilizzare ELWAVE sui file intraday si sarebbe anche bisogno del modulo giorno Intra. Il modulo standard di scansione consente di scansire una lista di titoli per soddisfare i propri criteri Predifined, permettendo quindi di tenere traccia di un mercato molto più grande e si risparmia un sacco di tempo in stock picking. Questo modulo analizza fine solo i dati al giorno. È possibile definire i propri criteri o utilizzare i criteri già definiti che viene fornito con il modulo di scansione. Il modulo professionale di scansione in grado di fare lo stesso come il modulo standard di scansione, ma permette di eseguire la scansione dei file di dati intraday (non in tempo reale ancora) e permette di fare molto più dettagliate criteri di ricerca, ad esempio, è possibile cercare in modo molto specifico su una combinazione di onde in diversi gradi onda. Mi piace Elliott Wave Analyzer (copia Elliottician) colorata mappa di probabilità per i prezzi futuri. I dont necessariamente bisogno dei bei colori, ma non ELWAVE avere tutto ciò che mi darà un riassunto di dove, date le molte alternative, il prezzo è probabile che sia Abbiamo infatti a disposizione una sintesi (per almeno 3 intervalli di tempo), che a nostro parere è molto più preciso di un ondata di calore. A volte, quando i livelli critici sono rotti, c'è solo un modo per andare, su o giù, finché l'uscita non viene colpito. Questo è ciò che i progetti ELWAVE per 3 tempi, che sono modelli nei modelli nei modelli o riformulata, le tendenze più piccoli nelle tendenze più grandi. Se per esempio tutti i tempi si rivolgono a un positivo, si preparano per l'accelerazione. L'ispettore Sintesi, che viene fornito con il modulo segnali di trading, presenta un quadro composito di tutte le alternative sottostanti, segnalando quando le opportunità di trading in realtà emergono. Inoltre, per ogni volta inquadrare nostri progetti software un'uscita e bersaglio media nel grafico calcolato utilizzando tutte le alternative sottostanti. Oltre a questo, le barre di destinazione vengono calcolati che sono obiettivi specifici per un modello. ELWAVE sarà guardare il mercato e aggiornare automaticamente l'analisi in tempo reale se i livelli critici sono rotti. Questo potrebbe significare che alcuni modelli ottengono invalidate, gli obiettivi, le uscite e il parametro di remunerazione del rischio ricalcolate o anche un positivo potrebbe trasformarsi in un neutro o negativo. Il nostro modulo di destinazione Cluster proietterà cluster tempo alta probabilità dove inversioni possono aver luogo. In combinazione con i cluster dei prezzi in proietterà una zona elevata probabilità nella tabella in cui ci si può aspettare di prezzo e di tempo inversioni saggi. Che cosa è esattamente la funzione di simulazione Nella nostra simulazione caratteristica è possibile istruire ELWAVE ai dati abbandono e vedere che cosa sarebbe previsto. Successivo è possibile confrontare il risultato effettivo con la previsione di ELWAVE. Si tratta di un ottimo strumento per imparare ad usare l'ispettore Sintesi e di nuovo alla prova la vostra strategia. Questa funzione è disponibile solo quando si ha il modulo segnali di trading. Si prega di spiegare come utilizzare la funzione di simulazione Per rendere il lavoro di simulazione, è necessario effettuare le seguenti operazioni: È necessario avere il modulo di segnali di trading. Per determinare dove nel grafico si desidera troncare i dati futuri, spostare il puntatore del mouse per quel punto e ricordare il numero di indice in alto a destra nella barra di stato nella parte inferiore dello schermo. Vai a lsquoOptionsrsquo e selezionare lsquoTruncate datarsquo prezzo. Inserire il numero di indice (ogni numero indice è un punto dati consecutivo) e premere OK Ora il grafico verrà troncato e ELWAVE non prenderà i dati futuri in considerazione mentre si fa un'analisi. Scegliere tra lsquoAnalysersquo l'opzione lsquoentire analysisrsquo. ELWAVE si presenti con l'analisi per quel punto nel tempo. Quando tutta l'analisi è completata è possibile aggiungere futuro passo dopo passo i dati, utilizzando ctrl 1 (1 aggiunge 1 punto di dati, 2 aggiunge 2 punti di dati, 3 aggiunge 4 punti di dati e 4 aggiunge 8 punti di dati e così via). se necessario ELWAVE aggiornerà l'analisi. Assicurarsi che l'aggiornamento analysisrsquo lsquoautomatic è in nel menu lsquoAnalysis optionsrsquo sotto lsquoOptionsrsquo. Avvisi in Impostazioni Alert vengono visualizzati, mentre allo stesso tempo, l'aggiornamento del Summary ispettore. Consente di dire che seguo dieci materie prime e voglio analisi automatiche fatto su di loro durante la notte. C'è un modo per fare questo tipo di elaborazione in batch con ELWAVE. yes, è possibile farlo utilizzando la finestra di ispezione scansione. È possibile definire il proprio elenco di materie prime da analizzare. Il modulo di scansione permette anche di eseguire la scansione solo per quei prodotti che si adattano ai tuoi criteri predefiniti io non sono sicuro di quello che i piccoli triangoli e diamanti sono alla destra del movimento dei prezzi I diamanti sono i bersagli media (per ogni volta che incorniciano un diamante a parte è visualizzato nel colore della cornice di tempo) calcolata da tutte le alternative sottostanti, che possono essere considerati come un obiettivo minimo. I triangoli sono i primi punti di uscita, dove sarà respinto solo la prima alternativa. Le barre di riferimento sono proiezioni di Fibonacci. Non posso selezionare rapporti di Fibonacci o obiettivi rapidi dopo un'analisi automatica. In un'analisi automatica delle barre di destinazione sono già mostrati nel grafico, per ogni periodo di tempo si può vedere un piccolo triangolo, quadrato e una linea verticale. Questi sono gli obiettivi calcolati da tutte le possibili alternative. Se volete vedere gli obiettivi rapidi per una specifica alternativa è necessario effettuare le seguenti operazioni: Selezionare l'alternativa che si desidera visualizzare utilizzando l'onda-albero Vai lsquoAnalysersquo e selezionare lsquoConvert a sventolare countrsquo. Apparirà una copia del grafico precedente. In questa copia è possibile modificare l'etichettatura e selezionare anche una certa etichetta. Dopo aver selezionato l'etichetta da cui si desidera visualizzare un obiettivo rapido premere il tasto destro del mouse e selezionare lsquoQuick targetsrsquo. You will see the Fibonacci targets for the project wave. I have noticed that ELWAVE sometimes projects a double set of Fibonacci targets, usually with wave 4 projections. This is correct, whenever you project a target for wave 5 it will give you a Fibonacci target from wave 1 and a Fibonacci target from wave 3. If you click on the target itself you can see to which wave it is related to, that wave will have two little squares that light up. After Irsquove analyzed the chart there are no target bars. What would cause this Normally targets will not show up if these are not available. There are several explanations for this: This could be the case when e. g. wave 1 has no beginning point. It just could be that not enough detail is shown using the wave tree (especially older versions than 4.0). Using the detail scroll bar underneath the chart, more detail can be added to the chart, possibly showing target bars. Target bars could be out of the range of the Y-axis. Adjust the Y-axis by clicking on it. How do I change the time period over which the real-time analysis takes place At present the analysis is on tick data as this is what comes directly through the DDE link, however I would like to use 1Min and 3Min analysis. How can I do this You can not change the analysis as such, because it is necessary to evaluate all data. However you could instruct ELWAVE to only check the signals every 2 or 5 minutes or other time periods. ELWAVE will itself look for optimal compression to find the consecutive wave degrees, which are not necessarily related to static time frames. What is the meaning of the blue square displayed on some major tops and bottoms The blue squares displayed on some major tops and bottoms are turning-points in order to find the correct time frames, but this is only for internal use by the program. What is the quickest way to update an analysis Considering that my computer needs on average twenty minutes for each update, because of insufficient PC power. I also prefer to use the lsquovery precisersquo option. The precise options need more time than the other options, you can either use less extra wave degrees or you can use less turning points for the smallest time frame or smaller time frames. You therefore have to go to the ELWAVEXX. ini file (XX stands for the version-number and you can find this file using windows explorer under c:windows) In this file look for the following: Analysis Analysis type4 (this depends on your current settings) Zigzag maximum level 03 Zigzag maximum level 123 Zigzag maximum level 210 Zigzag maximum level 310 Analysis depth4 You then have to change the Zigzag maximum level 3 from 10 to 7 or 8 for example (minimum is 5, else it cannot find a five wave structure). This should speed up your analysis considerably, but could influence your analysis. You can check this by analyzing the same file with the two settings and look for important differences. Are two years of data enough to perform a thorough and reliable forecast Is wave counting with your software data sensitive Two years of intra day data is sufficient enough to make a good analysis, but it depends on what time frame you use it for. For day trading or short term position trading it should be more than enough data. If it were end-of-day data, we would like to advise you to use at least five years of end-of-day data. More important than the size of the data is the fact the file should preferably begin just before a major top or bottom. Could you please give me an indication of the length of each time frame (wave degree) as they are defined in the software, i. e. is Grand Super Cycle about 200 years And Super Cycle, Cycle, Primary, etc. In our software the wave degrees are NOT connected to the cycle length normally attributed to wave degrees in Elliott Wave theory. An automatic analysis will always begin with the Super Cycle irrespective of the chart being a 3 day chart or a 100 year chart. The time it takes a wave of a particular degree to complete is subject to a lot of discussion. It is the relativeness of the wave degrees that is more important (e. g. first Cycle, then Primary and then Intermediate) than the actual time that is associated with each degree. The most important thing is the pattern in pattern concept. Waves should be grouped together correctly in a pattern, because waves within a pattern must be of the same degree. The proportion of waves, which combines time as well as price, determines whether waves belong to the same wave degree. Could your software distinguish non-zigzag corrective waves Our software tries every possible combination of patterns. If a wave contains a non-zigzag corrective wave that adheres to all rules, it will be found. 10. INDEXES, STOCKS, COMMODITIES OR FOREX . top. I would like to know if your software supports currency trading for foreign exchange, like JPY, GBP, DM and etc. ELWAVE can analyze any kind of security as long as you can feed it some historical price data in one of the formats it supports. Human emotions, which is the cause of all price changes, translate into the same patterns time and again. This is exactly why the Elliott Wave Principle works so well. 11. DATA FORMATS AND REAL TIME DATAFEED . top. Can ELWAVE use files from Tradestation Yes, ELWAVE can read the Globalserver datafiles directly, but only for TS 2000i. A TradeStation-add on module is also available now, which makes it possible to get an Elliott Wave count in your TradeStation 2000i chart. Can ELWAVE read Omega. omz files The old Omega. omz files are not supported, but the new Globalserver. xpo formats are. You could convert to ASCII and then import intra day or (EOD) files in ELWAVE . Alternatively ELWAVE can read Metastock intra day files. What sources would you recommend Our intra day module supports a real-time link with most data vendors. Either by linking it directly to ELWAVE or by using Excel. Consult your data vendor to see if they provide this link. The following data vendors provide real time links that have been confirmed to work: DBC eSignal Reuters (Reuters also has the possibility of retrieving Metastock files) Quote Tenfore CQG Euro4cast NDK ActivePlus Eurobech TFD Now we have added the following EOD data formats in addition to ASCII, Metastock and KeyWordWalltreet: FutureSource, CSI, Techtools, TC2000 and Globalserver. I do not know what a DDE data feed is A DDE link (Dynamic Data Exchange) is a feature of the Windows operating system to connect to other software and retrieve and update data. Almost all data vendors allow you to retrieve real-time data in Excel, this is done through a DDE link. I have recently been given access to the real-time module, however I am unable to use it, since I am unable to highlight REAL-TIME FEED within SCENARIO. How can I activate it Probably you are using an END-OF-DAY file, which can not be used to connect to a real time feed. This is because an intra day file has a time column, an end-of-day file has not. Therefore we advise you to build an intra day file from scratch and to keep it running next to a separate daily file or you have to obtain historical intra day data. How do I make a real time data feed First you have to make sure that your data vendor supplies a DDE-link. You can find out by trying to retrieve data in Excel. If you already have historical intra day data, go to lsquoScenariorsquo select lsquoNewrsquo then lsquoFrom price datarsquo and load this file into ELWAVE . Make sure it is in ASCII or Mestastock format. If it is not, than you first have to transform it into one of these formats. Once you have loaded the file successfully into ELWAVE . go to lsquoScenariorsquo and lsquoReal time datafeedrsquo. The following box will appear: There are two ways you can make a real-time datafeed with ELWAVE . Directly into ELWAVE . You will need to know what formula to fill in. If you are able to retrieve data in Excel, make this link and stand on the cell in which the data is shown. A formula will appear which looks like this: servernamersquotopicrsquorsquoitemrsquo. With this formula you can fill out the dialog box: In lsquoDDE Serverrsquo you must enter the servername (first part of the formula up to ). In lsquoTicker (Topic)rsquo enter the second part of the formula without the quotes, this part is usually the name or code of the stock you are retrieving (depending on your vendor). In lsquoClose (item)rsquo fill in the last part of the formula, also without the quotes. This part of the formula tells you what information of the selected stock you are retrieving (e. g. lastprice, bid, offer, etc.). With the multiplier next to lsquoClose (item)rsquo you can change the data received into the same format as your datafile. Per esempio. your datafile has stored the DollarYen as 120.12, but real-time data is retrieved as 1,2012. You can multiply by 100 times, so that the data retrieved matches your historical data. lsquoDate (item)rsquo and lsquoTime (item)rsquo can be filled out if your vendor provides these items. If you leave it blank, ELWAVE will automatically use your system date and time. If you live in a different time zone than where the stock is traded, you might want to choose to have the time of that time zone instead of your local time, therefore you can fill out these boxes. In lsquoAuto saversquo you can define the time for ELWAVE to make a backup of the retrieved data. You have to determine where you want the data to be saved, when you press lsquoChange location or file typersquo, you can rename the file or have it stored on an other place. You can fill out the trading hours, this is optional. Sometimes your data vendor keeps sending ticks after trading has been suspended, this will corrupt you file. Using the trading hours, ELWAVE will ignore all incoming data that is not within the specified trading hours. Press lsquoOKrsquo and you should see data coming in. Troubleshooting: If after you have pressed lsquoOKrsquo and ELWAVE returns an error message, usually two things can be the cause: Your DDE server is not active. You have not filled out the box correctly. Try to verify that the items have been filled out exactly as required (including capitals and forward - or backward slashes). Your data vendor does not support a direct link with ELWAVE . Save the chart as a scenario, this way you donrsquot have to fill out the dialog box each time you open the datafile. Opening the scenario automatically opens the right datafile and the dialog box has already been filled, just press lsquoOKrsquo. If your data vendor does not support a direct link, you can also link it through Excel: Make a link from your data vendor to Excel. Save the Excel workbook. Tip: Give this workbook the same name as the stock that is being retrieved. Fill out the dialog box by repeating the steps as described under 1b, but this time lsquoDDE Serverrsquo is EXCEL, lsquoTicker (Topic)rsquo is Workbookname. xls and lsquoClose (item)rsquo is C. Always have the Excel workbook open, else it will not have a DDE server. Save the chart as a scenario, this way you donrsquot have to fill out the dialog box each time you open the datafile. Opening the scenario automatically opens the right datafile and the dialog box has already been filled, just press lsquoOKrsquo. If you donrsquot have historical data you will have to build your own file from scratch. Go to lsquoScenariorsquo select lsquoNewrsquo and then lsquoFrom real time datafeedrsquo, the same dialog box will appear and repeat the steps under 1 or 2 as described above. Using dynamic ranges in Excel Dynamic ranges are incredibly useful where the amount of data in your worksheets keeps changing, and you need ways to analyse all or part of that data in charts or pivot tables. Here are a few possible applications for dynamic ranges: Plotting series of financial data that are updated daily, weekly or monthly Plotting a moving window, for example, just the last 12 months of data in a growing series Building pivot tables based on a growing data set Creating a dynamic range To create a dynamic range you need to use the OFFSET function, which lets you define a cell or cells relative to a starting point. This lets us define the start point, height (rows) and width (columns) of the range. OFFSET has the following syntax: The last two parameters are optional, but we will use them here. In the sample file, go to the DataSeries sheet. In columns A:C are about 40 rows of equity trading data. We need to plot Equity (Column C) against Date (Column A), and allow the data series and the linked chart to adjust as more data is added. Open the Names dialog box In Excel 2007 go to the Formulas tab and select Define Name in earlier versions go to Insert gt Name gt Define. Define the name -- Excel 2007 The dialog looks like this: In the Name row of the dialog enter Dates Leave the scope as Workbook -- we want to be able to use this range anywhere in the workbook, not just this sheet. In the Refers To row put this formula: Click OK Define the name -- earlier Excel versions The dialog looks like this: In the Name row of the dialog enter Dates In the Refers To row put the same formula as above. Click Add, then OK to dismiss the dialog Define the second name The second range is based on column C, and starts in C2. The name of the range is Equity, and the reference formula is Unpacking the OFFSET function The OFFSET formula above defines the following features of the dynamic range called Dates: Viewing the range For normal ranges, to jump to that range you can select it in the Names box. For any names based on formulas, you can39t do this because the Names box will not display them. Instead you need to do the following: Formulas gt Name Manager (Excel 2007) or Insert gt Name gt Define (Earlier versions) Click anywhere in the Reference line and the range selector will highlight the range for you Now, copy some data from columns F and G directly below the range. Fill the formula in column C down, and check the range again. It will have expanded to accommodate the new data. Practical Application: A chart with an expanding data range Using the data from the open workbook, select A1:A9 and, holding down the Ctrl key, select C1:C9. Create a line chart using the default settings. At this stage it39s pretty boring. Click the thumbnail to see a full-sized image Select the data series and you will see the series formula displayed: The syntax for this formula is SERIES(Series Label, X values, Y values, Series Number). To change this into a dynamic series we need to use the range names in the series formula. Leaving the sheet references untouched, but replacing the ranges in columns A and C with the two range names, results in this series formula: Press Enter or Tab to stop editing the formula, and two things will happen: The series formula will update to a different syntax, using the workbook name and not the worksheet name. Although you could do this yourself, it39s simpler and less error-prone to just do the range name substitution and let Excel automatically update the formula for you. The chart will update to take in the new data range The new syntax is The updated chart now looks like this Click the thumbnail to see a full-sized image Try adding and removing data from the range, and see how the chart adapts. Another option: letting the user control the size and start of the the chart range You can take this a step further, by letting your users select both the start point and the amount of data to plot. Download this sample file (13,200 bytes) to see how it39s done Other ways to create dynamic range names If you are creating a lot of dynamic ranges, manually editing the formulas becomes tedious. You can save yourself a lot of time by using VBA to create dynamic ranges . Copyright 1997-2010 All Rights Reserved. Home About Links Contact Excel Access
No comments:
Post a Comment