Accedi con Microsoft
Accedi o crea un account.
Salve,
Seleziona un altro account.
Hai più account
Scegli l'account con cui vuoi accedere.

Riepilogo

Questo articolo contiene procedure di Visual Basic, Applications Edition Microsoft di esempio che è possibile usare per l'uso con diversi tipi di matrici.

Ulteriori informazioni

Microsoft fornisce esempi di programmazione solo per illustrazioni, senza garanzie espresse o implicite. Sono incluse, a titolo esemplifiche, le garanzie implicite di commerciabilità o idoneità per uno scopo specifico. In questo articolo si presuppone che si abbia familiarità con il linguaggio di programmazione che viene illustrato e con gli strumenti usati per creare ed eseguire il debug delle routine. I tecnici del supporto Tecnico Microsoft possono spiegare le funzionalità di una particolare procedura, ma non modificarli per fornire funzionalità aggiuntive o creare procedure in base a specifici requisiti. NOTA: nelle procedure Visual Basic, Applications Edition, le parole dopo l'apostrofo (') sono commenti.
 

Per riempire una matrice e quindi copiarla in un foglio di lavoro

  1. Aprire una nuova cartella di lavoro e inserire un foglio modulo di Visual Basic.

  2. Digitare il codice seguente nel foglio modulo.

    Sub Sheet_Fill_Array()
       Dim myarray As Variant
       myarray = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
       Range("a1:a10").Value = Application.Transpose(myarray)
    End Sub
    
  3. Selezionare Foglio1.

  4. Scegliere Macro dal menu Strumenti e quindi fare clic su Macro.

  5. Nella finestra di dialogo Macro fare clic su Sheet_Fill_Array e quindi su Esegui.

Per accettare valori da un foglio di lavoro e riempire la matrice

  1. Digitare i valori in Foglio1 nelle celle A1:A10.

  2. In un foglio modulo di Visual Basic digitare il codice seguente:

    Sub from_sheet_make_array()
       Dim thisarray As Variant
       thisarray = Range("a1:a10").Value
    
       counter = 1                'looping structure to look at array
       While counter <= UBound(thisarray)
          MsgBox thisarray(counter, 1)
          counter = counter + 1
       Wend
    End Sub
    
  3. Selezionare Foglio1.

  4. Scegliere Macro dal menu Strumenti e quindi fare clic su Macro.

  5. Nella finestra di dialogo Macro fare clic su from_sheet_make_array e quindi su Esegui.

Per passare e ricevere una matrice

  1. In un foglio modulo digitare il codice seguente:

    Sub pass_array()
       Dim thisarray As Variant
       thisarray = Selection.Value
       receive_array (thisarray)
    End Sub
    
    Sub receive_array(thisarray)
       counter = 1
       While counter <= UBound(thisarray)
          MsgBox thisarray(counter, 1)
          counter = counter + 1
       Wend
    End Sub
    
  2. Selezionare Foglio1 ed evidenziare l'intervallo A1:A10.

  3. Scegliere Macro dal menu Strumenti e quindi fare clic su Macro.

  4. Nella finestra di dialogo Macro fare clic su pass_array e quindi su Esegui.

Per confrontare due matrici

  1. Creare due intervalli denominati in Foglio1. Assegnare un nome a un intervallo1 e all'altro intervallo2.

    Ad esempio, evidenziare l'intervallo di celle A1:A10 e denominarlo intervallo1; evidenziare l'intervallo di celle B1:B10 e denominarlo intervallo2.

  2. Digitare il codice seguente nel foglio modulo.

    Sub compare_two_array()
       Dim thisarray As Variant
       Dim thatarray As Variant
    
       thisarray = Range("range1").Value
       thatarray = Range("range2").Value
       counter = 1
       While counter <= UBound(thisarray)
          x = thisarray(counter, 1)
          y = thatarray(counter, 1)
          If x = y Then
             MsgBox "yes"
          Else MsgBox "no"
          End If
          counter = counter + 1
       Wend
    End Sub
    
  3. Selezionare Foglio2.

  4. Scegliere Macro dal menu Strumenti e quindi fare clic su Macro.

  5. Nella finestra di dialogo Macro fare clic su compare_two_array e quindi su Esegui.

    Verrà visualizzata una finestra di messaggio per ogni confronto.

Per riempire una matrice dinamica

  1. In un foglio modulo digitare il codice seguente:

    Sub fill_array()
    
       Dim thisarray As Variant
       number_of_elements = 3     'number of elements in the array
    
       'must redim below to set size
       ReDim thisarray(1 To number_of_elements) As Integer
       'resizes this size of the array
       counter = 1
       fillmeup = 7
       For counter = 1 To number_of_elements
          thisarray(counter) = fillmeup
       Next counter
    
       counter = 1         'this loop shows what was filled in
       While counter <= UBound(thisarray)
          MsgBox thisarray(counter)
          counter = counter + 1
       Wend
    
    End Sub
    
  2. Scegliere Macro dal menu Strumenti e quindi fare clic su Macro.

  3. Nella finestra di dialogo Macro fare clic su fill_array e quindi su Esegui.

NOTA: la modifica della variabile "number_of_elements" determinerà le dimensioni della matrice.
 

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.

Le community aiutano a porre e a rispondere alle domande, a fornire feedback e ad ascoltare gli esperti con approfondite conoscenze.

Queste informazioni sono risultate utili?

Come valuti la qualità della lingua?
Cosa ha influito sulla tua esperienza?
Premendo Inviare, il tuo feedback verrà usato per migliorare i prodotti e i servizi Microsoft. L'amministratore IT potrà raccogliere questi dati. Informativa sulla privacy.

Grazie per il feedback!

×