Μετατροπή ενιαίου διανύσματος γραμμών σε μήτρα - Παραδείγματα κώδικα VBA

  • Βήμα 1Βγάλτε το Interactive VBA Tutorial δωρεάν
  • Βήμα 2Το πρόσθετο VBA καθιστά εύκολη τη λήψη κωδικοποίησης
  • Βήμα 3Ανατρέξτε στον δείγμα κώδικα VBA
  • Μισθώστε μαςΣύνθετη απαίτηση VBA; Προσλάβετε τους ειδικούς μας.

Μάθετε VBA

Μετατρέψτε το διάνυσμα μονής σειράς σε μήτρα

Αυτό είναι το αντίθετο σεμινάριο του σεμιναρίου μετατροπής μήτρας σε διάνυσμα.

Η ακόλουθη συνάρτηση λαμβάνει ένα διάνυσμα μίας σειράς και μετατρέπεται σε πίνακα:

123456789101112131415161718 Συνάρτηση Create_Matrix (Vector_Range As Range, No_Of_Cols_in_output As Integer, No_of_Rows_in_output As Integer) As VariantReDim 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 Τότε Έξοδος από τη λειτουργίαΓια 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) + Row_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