Tutorial VBA Excel - Video 5 - Esempio di utilizzo Array

preview_player
Показать описание
In questo video vediamo come utilizzare un Array per attribuire dei valori ai menu a tendina (caselle combinate) di una form.

Per scaricare il materiale vai al sito web:

Per seguirmi su Facebook:
@VBAmarcodelgrosso
Рекомендации по теме
Комментарии
Автор

Ciao Marco. La matrice deve essere sempre di tipo Variant, perché può contenere lettere e numeri. Ecco un esempio:

Sub test()
Dim lig, col, i, k As Integer
Dim Tablo(), tbl As Variant

With Feuil1
lig = .Range("a" & Rows.Count).End(xlUp).Row
tbl = .Range("a1:n" & lig)
End With

For i = LBound(tbl) To UBound(tbl)
col = col + 1: ReDim Preserve Tablo(1 To UBound(tbl, 2), 1 To col)
For k = 1 To UBound(tbl, 2): Tablo(k, col) = tbl(i, k): Next k
Next i

With Feuil2
.Range(.Cells(1, 1), .Cells(lig, UBound(tbl, 2))) =
End With

End Sub

droitaucoeur
Автор

Definendo dinamicamente l'intervallo Tipologia (tramite scarto e conta valori) hai l'unica accortezza che devi tenere libera la colonna A per l'elenco delle tipologia, ma così non appesantisci il codice con cicli for ( che sono lenti in vba) che devono, ad ogni ciclo ridimensionano array.
In alternativa non potresti stabilire preventivamente l'intervallo d'interesse (con end etc etc) e poi assegnare alla array direttamente l'insieme dei valori di un range....

tipologia =


Prova a fare prove con di 200 o 300 elementi e confronta l'efficienza dei due metodi.


Forse spiegherai dopo quali sono i vantaggi degli array... vediamo nei prossimi video.
Comunque ottimi video.

ettorecostantini
Автор

Complimenti per la pazienza, la dedizione e le capacità di spiegare lentamente con calma... sto cercando un modo di leggere da vari file xls uno dopo l'altro e trasferire i vari dati alfanumerici o solo numerici presenti dentro le celle e scriverli in stringhe orizzontali o righe una dopo l'altra in sequenza verticale dentro un unico file complessivo di testo .txt. ma sembra molto complicato e non ho forse tutte le nozioni necessarie e ci sto sbattendo la testa. Grazie

lucadefranco
Автор

se schiacci inavvertitamente il pulsante inserisci crea delle righe vuote che non si riempiono più

stefanovalleri