Mit Microsoft anmelden
Melden Sie sich an, oder erstellen Sie ein Konto.
Hallo,
Wählen Sie ein anderes Konto aus.
Sie haben mehrere Konten.
Wählen Sie das Konto aus, mit dem Sie sich anmelden möchten.

Eine Microsoft Excel 2000-Version dieses Artikels finden Sie unter 213798.

Eine Version Microsoft Excel 98 und früheren Versionen Excel diesem Artikel finden Sie unter 149689.

Zusammenfassung

Dieser Artikel enthält Microsoft Visual Basic for Applications-Prozeduren, die Sie zum Arbeiten mit verschiedenen Typen von Arrays verwenden können.

Weitere Informationen

Microsoft stellt nur zur Veranschaulichung Beispiele für die Programmierung zur Verfügung, ohne dass die Garantie entweder ausgedrückt oder impliziert ist. Dies schließt, jedoch nicht beschränkt auf, implizierte Garantien der Handelsbarkeit oder Eignung für einen bestimmten Zweck ein. In diesem Artikel wird davon ausgegangen, dass Sie mit der gezeigten Programmiersprache und den Tools vertraut sind, die zum Erstellen und Debuggen von Prozeduren verwendet werden. Microsoft-Supporttechniker können dabei helfen, die Funktionalität eines bestimmten Verfahrens zu erläutern, aber sie ändern diese Beispiele nicht, um zusätzliche Funktionen bereitzustellen oder Prozeduren zu erstellen, die Ihren speziellen Anforderungen entsprechen. HINWEIS: In Visual Basic for Applications sind die Wörter nach dem Apostroph (') Kommentare.

So füllen Sie ein Array aus und kopieren es dann in ein Arbeitsblatt

  1. Öffnen Sie eine neue Arbeitsmappe, und fügen Sie ein Visual Basic ein.

  2. Geben Sie den folgenden Code in das Modulblatt ein.

    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. Wählen Sie Tabelle1 aus.

  4. Zeigen Sie im Menü Extras auf Makro, und klicken Sie dann auf Makros.

  5. Klicken Sie im Dialogfeld Makro auf Sheet_Fill_Array, und klicken Sie dann auf Ausführen.

So nehmen Sie Werte aus einem Arbeitsblatt und füllen das Array

  1. Geben Sie die Werte von Tabelle1 in die Zellen A1:A10 ein.

  2. Geben Sie Visual Basic Arbeitsblatt des Moduls den folgenden Code ein:

    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. Wählen Sie Tabelle1 aus.

  4. Zeigen Sie im Menü Extras auf Makro, und klicken Sie dann auf Makros.

  5. Klicken Sie im Dialogfeld Makro auf from_sheet_make_array, und klicken Sie dann auf Ausführen.

So übergeben und empfangen Sie ein Array

  1. Geben Sie auf einem Modulblatt den folgenden Code ein:

    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. Wählen Sie Tabelle1 aus, und markieren Sie den Bereich A1:A10.

  3. Zeigen Sie im Menü Extras auf Makro, und klicken Sie dann auf Makros.

  4. Klicken Sie im Dialogfeld Makro auf pass_array, und klicken Sie dann auf Ausführen.

So vergleichen Sie zwei Matrizen

  1. Erstellen Sie zwei benannte Bereiche auf Tabelle1. Benennen Sie einen Bereich1 und den anderen Bereich2.

    Markieren Sie z. B. den Zellbereich A1:A10, und nennen Sie ihn Bereich1; Markieren Sie den Zellbereich B1:B10, und nennen Sie ihn Bereich2.

  2. Geben Sie den folgenden Code in das Modulblatt ein.

    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. Wählen Sie Tabelle2 aus.

  4. Zeigen Sie im Menü Extras auf Makro, und klicken Sie dann auf Makro.

  5. Klicken Sie im Dialogfeld Makro auf compare_two_array, und klicken Sie dann auf Ausführen.

    Für jeden Vergleich wird ein Meldungsfeld angezeigt.

So füllen Sie ein dynamisches Array aus

  1. Geben Sie auf einem Modulblatt den folgenden Code ein:

    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. Zeigen Sie im Menü Extras auf Makro, und klicken Sie dann auf Makros.

  3. Klicken Sie im Dialogfeld Makro auf fill_array, und klicken Sie dann auf Ausführen.

HINWEIS: Eine Änderung der Variablen "number_of_elements" bestimmt die Größe des Arrays.

Benötigen Sie weitere Hilfe?

Ihre Office-Fähigkeiten erweitern
Schulungen erkunden
Neue Funktionen als Erster erhalten
Microsoft Insider beitreten

War diese Information hilfreich?

Wie zufrieden sind Sie mit der Sprachqualität?
Was hat Ihre Erfahrung beeinflusst?

Vielen Dank für Ihr Feedback!

×