Risultati da 1 a 2 di 2

Discussione: Verifica Macro per storicizzare automaticamente dati ricevuti in realtime tramite DDE



  1. #1
    L'avatar di Sefote
    Clicca e Apri
    Data Registrazione
    Mar 2016
    Località
    Sardegna
    Messaggi
    2
    Versione Office
    Excel 2013
    Likes ricevuti
    0
    Likes dati
    1

    Verifica Macro per storicizzare automaticamente dati ricevuti in realtime tramite DDE

    Buongiornoa tutti, vi chiedo gentilmente di verificare la correttezza della macro (che ho copiato in quanto non conosco il VBA), affinché possa storicizzare automaticamente tutti i dati ricevuti in tempo reale tramite DDE, al variare di un solo dato,come spiego di seguito.
    Per meglio capire allego un file in cui ci sono due Fogli:
    1) Foglio“storico”, in cui ci sono i collegamenti DDE e in cui ci deve essere la storicizzazione dei dati al variare del valore del link DDE contenuto nella Cella E5. Sempre in tale foglio vorrei che ci fossero sia il Tasto Start di attivazione della Macro (che ho creato io associandolo alla Macro. Adesso la Macro funziona solo se lo pigio manualmente), sia quello Stop/End
    2) Foglio“grafico in Real Time” in cui vorrei plottare, sulla base dei dati storicizzatinel foglio “storico”, un grafico a barre orizzontali che si aggiorni in realtime che nell'asse delle ordinate abbia il' " Prezzo Ultimo" (dicolonna B del Foglio “storico”) e nell'asse delle ascisse misuri le Quantità scambiate, per ogni prezzo (Ultimo), di colonna G sempre del Foglio “storico”.Le quantità della Colonna G devono essere calcolate dalla Macro, come spiegato di seguito. Il grafico in Real time è lo scopo finale di ciò che vorrei ottenere con la storicizzazione dei dati tramite la Macro.
    Strutturadel Foglio “storico”
    Nelle seguentiCelle della riga 5 ci sono i collegamenti DDE che si aggiornano in tempo reale:
    - A5 “Ora”,B5 “Ultimo Prezzo”, C5 “Bid”, D5 “Ask”, E5 “Volume Totale”.
    Il collegamento DDE della riga E5 è “T3_DDE_SERVER|T3_DDE_QUOTE_TOPIC!'MI.DER.990272@trade_volume_bi'“
    Vorrei che la Macro facesse, in automatico, una volta attivata con il tasto start, 2cose:
    1) Al variare del dato contenuto in E5 “Volume Totale”, vorrei che storicizzasse tutti i dati ricevuti in real time tramite la DDE , delle celle suddette, nelle corrispondenti colonne della riga 6.
    Mano a mano che la macro storicizza i dati, le storicizzazioni meno recenti devono scalare nelle righe 7,8,9 etc..,
    2) oltre a storicizzare i dati suddetti, vorrei che la Macro calcolasse e storicizzasse la Variazione del Volume Totale, nelle corrispondenti righe della Colonna F. La variazione sarà data sempre dal volume totale storicizzato in E6 - il volume totale storicizzato in E7. Per avere la prima storicizzazione della Variazione del “volume Totale”, in colonna F riga E7, è pertanto necessario avere le prime 2 storicizzazioni.

    Questa è la Macro (che ho copiato nel Foglio 1 “storico” (non so se si copia in questo foglio)

    Codice: 
    Private Sub Restarta()
    Dim wb AsWorkbook
    Dim DDEsourceAs Variant
    Set wb =ThisWorkbook
    DDEsource = wb.LinkSources(xlOLELinks)
    Dim i AsInteger
    If NotIsEmpty(DDEsource) Then
    For i = 1 ToUBound(DDEsource)
    
    If DDEsource(i) "T3_DDE_SERVER|T3_DDE_QUOTE_TOPIC!'MI.DER.990272@trade_volume_bi'"Then
    wb.SetLinkOnData DDEsource(i), "DDEupdated" End If Next i Else MsgBox"no DDE links", vbCritical, "Error" End If Set wb =Nothing End Sub Public Sub DDEupdated() Dim rng AsRange Set rng =ThisWorkbook.Sheets("storico").Range("A5:AE5") rng.Calculate On Error GoTo err_sub With rng If NotEvaluate("and(exact(Storico!B5:AC5,Storico!B6:AC6))") Then .Offset(1).EntireRow.Insert shift:=xlShiftDown,CopyOrigin:=xlFormatFromRightOrBelow .Offset(1).Value = .Value End If End With err_sub: Set rng =Nothing End Sub
    Vi ringrazio anticipatamente per l'aiuto
    PS
    Chiedo venia per non riuscire a postare correttamente la Macro, nonostante abbia letto le istruzioni
    File Allegati File Allegati
    Ultima modifica fatta da:cromagno; 20/03/16 alle 17:47 Motivo: Inserito (correttamente) codice tra i TAG CODE...

  2. #2
    L'avatar di Sefote
    Clicca e Apri
    Data Registrazione
    Mar 2016
    Località
    Sardegna
    Messaggi
    2
    Versione Office
    Excel 2013
    Likes ricevuti
    0
    Likes dati
    1
    Buongiorno, mi sono accorto di aver scritto una cosa sbagliata in questa frase. "Per avere la prima storicizzazione della Variazione del “volume Totale”, in colonna F riga E7". Riga E7 deve essere sostituita con riga F7.
    Gentilmente chiedo agli Esperti se ciò che vorrei facesse la Macro è una cosa fattibile o meno.
    Rimango a disposizione per eventuali delucidazioni
    Vi ringrazio per la risposta

Discussioni Simili

  1. Mi piace dati/ricevuti
    Di alfrimpa nel forum Problemi, suggerimenti e Novità del forum
    Risposte: 4
    Ultimo Messaggio: 22/02/17, 00:31
  2. Macro verifica tempi con tolleranza percentuale
    Di Aragot84 nel forum Domande su Excel VBA e MACRO
    Risposte: 7
    Ultimo Messaggio: 20/12/16, 11:30
  3. Eseguire una macro quando si verifica una condizione
    Di daviluc nel forum Domande su Excel VBA e MACRO
    Risposte: 2
    Ultimo Messaggio: 01/10/16, 20:37
  4. Archiviazione dati tramite macro
    Di bopo57 nel forum Domande su Excel VBA e MACRO
    Risposte: 10
    Ultimo Messaggio: 22/08/16, 12:21

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •