Konvertieren von Matrix in Vektor - VBA-Codebeispiele

Konvertieren Sie eine Matrix in einen Vektor

Dies ist das entgegengesetzte Tutorial des Tutorials Konvertieren eines einzelnen Zeilenvektors in eine Matrix.

Die folgende Funktion nimmt einen Bereich als Matrix und wandelt ihn in einen einzelnen Spaltenvektor um:

Option Explizite Funktion Create_Vector(Matrix_Range As Range) As Variant Dim No_of_Cols As Integer, No_Of_Rows As Integer Dim i As Integer Dim j As Integer Dim Cell No_of_Cols = Matrix_Range.Columns.Count No_Of_RowDray.Row Matrix_Range 'NULL-Bedingungen beseitigen, wenn Matrix_Range nichts ist, dann Funktion verlassen, wenn No_of_Cols = 0, dann Funktion verlassen, wenn No_Of_Rows = 0, dann Funktion verlassen For j = 1 To No_Of_Rows For i = 0 To No_of_Cols - 1 Temp_Array((i * No_Of_Rows) + j) = Matrix_Range.Cells(j, i + 1) Next i Next j Create_Vector = Temp_Array End Function

Also zum Beispiel der Vektor:

Wird werden:

Wobei wir die folgende Subroutine verwendet haben, um den Vektor auszudrucken:

Private Sub CommandButton1_Click() Dim Vector Dim k As Integer Vector = Create_Vector(Sheets("Sheet1").Range("A4:D8")) For k = 1 To UBound(Vector) Sheets("Sheet1").Range(" B20").Offset(k, 1).Value = Vector(k) Next k End Sub

Beachten Sie, dass diese Routinen sowohl für Zahlen als auch für Text funktionieren.

Um die .XLSM-Datei aus diesem Tutorial herunterzuladen, klicken Sie hier.

Sie werden die Entwicklung der Website helfen, die Seite mit Ihren Freunden teilen

wave wave wave wave wave