Преобразуване на вектор от един ред в матрица - Примери за код на VBA

  • Етап 1Вземете интерактивен VBA урок безплатно
  • Стъпка 2Нашата добавка VBA улеснява кодирането
  • Стъпка 3Вижте нашия примерен код на VBA
  • Наемете ниСложно изискване за VBA? Наемете нашите експерти.

Научете VBA

Преобразувайте вектор от един ред в матрица

Това е противоположният урок на урока Convert Matrix to Vector.

Следващата функция взема едноредов вектор и се преобразува в матрица:

123456789101112131415161718 Функция Create_Matrix (Vector_Range As Range, No_Of_Cols_in_output As Integer, No_of_Rows_in_output As Integer) Като вариантReDim Temp_Array (No_Of_Cols_in_output, No_of_Rows_in_output)Dim No_Of_Elements_In_Vector As IntegerDim Col_Count As Integer, Row_Count As IntegerDim CellNo_Of_Elements_In_Vector = Vector_Range.Rows.Count„Премахване на условията NULLАко Vector_Range не е нищо, излезте от функциятаАко No_Of_Cols_in_output = 0 След това излезте от функциятаАко No_of_Rows_in_output = 0 След това излезте от функциятаАко No_Of_Elements_In_Vector = 0, тогава излезте от функциятаFor Col_Count = 1 Към No_Of_Cols_in_outputЗа Row_Count = 1 към No_of_Rows_in_outputTemp_Array (Col_Count, Row_Count) = Vector_Range.Cells ((((No_of_Rows_in_output) * (Col_Count - 1) + Ro__Count), 1)Следващ Row_CountСледващ Col_CountCreate_Matrix = Temp_ArrayКрайна функция

Функцията приема 3 аргумента:
• Обхватът на началния вектор
• Броят на необходимите редове в матрицата
• Броят на колоните, необходими в матрицата

Така че, ако имаме:

Тогава можем да извикаме нашата функция:

Преобразуване в_матрица (c7: c16,2,5)

Където:

1. c7: c16 е матричният диапазон
2. 2 е броят на необходимите редове в матрицата
3. 5 е броят на необходимите колони

И получаваме:

За да изтеглите .XLSM файла от тази функция, щракнете тук.

Така ще помогнете за развитието на сайта, сподели с приятелите си

wave wave wave wave wave