Condividi tramite


Esercitazione: Creazione di macro per i dati di streaming

In questa esercitazione si apprenderà come:

  • Creare moduli per l'organizzazione di macro
  • Dichiarare funzioni di riferimento
  • Creare macro per il salvataggio delle versioni di valutazione

Prerequisiti

  • Dati del sensore trasmessi in precedenza nella pagina Data In di Excel
  • Tabella dati di valutazione creata e strutturata
  • Scheda della barra multifunzione per sviluppatori abilitata

Creare moduli in VBA

  1. Selezionare Developer > Visual Basic per aprire Visual Basic per Excel
  2. Selezionare Inserisci > modulo per aggiungere un modulo per l'archiviazione di macro
  3. Nella scheda Proprietà rinominare Module1 come desiderato. In questo modo verranno archiviati i riferimenti.
  4. Ripetere i passaggi 2 e 3, rinominando anche come desiderato. Verranno archiviati i macro attivi.

Dichiarare funzioni di riferimento

  1. Nella finestra Progetto selezionare il modulo desiderato per i riferimenti.

  2. Nella finestra del codice iniziare dichiarando Option Explicit.

  3. Di seguito, definire il nome del foglio in cui è archiviata la tabella.

  4. Ripetere il passaggio 3 per il nome della tabella.

     Option Explicit
     Public Const sheetname = "Backend"
     Public Const tblname = "Tbl_Backend"
     Public Const sensorcount = 2
    
  5. Usare il comando Funzione per creare un riferimento abbreviato per la tabella.

    Function BT_tbl() as ListObject
            Set BT_tbl = Sheets(sheetname).ListObjects(tblname)
    End Function
    
  6. Usare il comando Funzione per creare un riferimento abbreviato per le colonne di streaming di ogni sensore.

    Function Live_CH(snum As Integer) As Range
            Set Live_CH = BT_tbl.ListColumns("CH" & snum).DataBodyRange
    End Function
    
  7. Usare il comando Funzione per creare un riferimento abbreviato per le colonne di valutazione di ogni sensore.

    Function Trial_CH(snum As Integer, tnum As Integer) As Range
            Set Trial_CH = BT_tbl.ListColumns("CH" & snum & "_T" & tnum).DataBodyRange
    End Function
    
    

Queste funzioni consentono all'utente di fare facilmente riferimento a oggetti e intervalli nella cartella di lavoro, semplificando notevolmente la scrittura e la comprensione delle macro attive.

Creare macro per il salvataggio delle versioni di valutazione

  1. Nella finestra Progetto selezionare il modulo desiderato per i riferimenti.

  2. Nella finestra del codice iniziare dichiarando il nome della macro di valutazione di salvataggio usando un file sub.vba

    Sub SaveTrial()
    
    End Sub
    
  3. Per consentire alla macro di comprendere quale versione di valutazione fare riferimento in base al pulsante su cui è stato fatto clic, inserire il codice seguente in questo sottosistema

    Sub SaveTrial()
            Dim tnum As Integer
            tnum = Right(ActiveSheet.Shapes(Application.Caller).Name,1)
    End Sub
    
  4. Infine, per ogni sensore, aggiungere una riga di codice per rendere la colonna di valutazione desiderata uguale alla colonna di streaming corrispondente.

    Sub SaveTrial()
            Dim Num As Integer
            Num = Right(ActiveSheet.Shapes(Application.Caller ).Name,1)
            References.BT_CH1_Trial(Num).Value = References.BT_CH1.Value
            References.BT_CH2_Trial(Num).Value = References.BT_CH2.Value
    End Sub
    

Con questa macro scritta, l'utente può ora assegnare le macro agli oggetti .

Assegnare macro a oggetti

  1. Passare alla cartella di lavoro di Excel, al foglio di lavoro che contiene la tabella e gli oggetti denominati.
  2. Selezionare tutti i pulsanti di valutazione tenendo premuto MAIUSC e selezionando ogni oggetto.
  3. Aprire il menu di scelta rapida per questi oggetti e selezionare Assegna macro...
  4. Selezionare la macro SaveTrial .

Quando si fa clic, questi pulsanti attiveranno ora la macro SaveTrial , copiando i dati dalle colonne di dati attivi alle colonne di valutazione desiderate.