April 18
Applicazione di Visual Basic (VBA) è il linguaggio di programmazione che Excel incorpora nel proprio editor di Macro. Il VBE (Visual Basic Editor) editor di macro in Microsoft Excel consente agli utenti di scrivere semplici programmi che automatizzano le attività ridondanti. Qui scriveremo una macro VBA che duplicare i dati in un foglio di lavoro, ordinare in un array multidimensionale e scrivere in un nuovo foglio di lavoro. Questo processo è utile quando è necessario un foglio di lavoro ordinato, ma l'originale, foglio di lavoro non differenziati deve rimanere intatto.
1 Avviare Excel facendo clic su "Start", "Microsoft Office", "Excel".
2 Avviare il Visual Basic Editor (VBE) premendo il tasto "ALT" e "F11" simultaneamente.
3 Scrivi il processo per la copia di un foglio di lavoro in un array multidimensionale. Selezionare il seguente codice e copiarlo nella VBE:
Sub Read_Into_Array ()
Dim arrdata () As Variant
Dim ColACount As Long
Dim i As Long
ColACount = Range (Range ( "A1"), Range ( "A" e Rows.Count) .End (xlUp)). Conte
ReDim arrdata (da 1 a ColACount, 1 a 2)
Per i = 1 a ColACount
arrData(i, 1) = Range("A" & i).Value
arrdata (i, 2) = Range ( "B" & amp; i) .Value
Next i
End Sub
4 Ordinare l'array con il processo di Bubble Sort VBA. Copiare e incollare il seguente codice sotto il codice del passaggio precedente. Sarà ordinare la matrice bidimensionale:
Sub Sort_Array ()
SortColumm1 = 0
SortColumn2 = 3
Per i = LBound (ArrayName, 1) Per UBound (ArrayName, 1) - 1
For j = LBound(ArrData, 1) To UBound(ArrData, 1) - 1
Condizione1 = arrdata (j, SortColumn1)> arrdata (j + 1, SortColumn1)
Condizione2 = arrdata (j, SortColumn1) = arrdata (j + 1, SortColumn1) e _
Arrdata (j, SortColumn2)> arrdata (j + 1, SortColumn2)
Se Condizione1 o Condizione2 poi
Per y = LBound (arrdata, 2) Per UBound (arrdata, 2)
t = arrdata (j, y)
Arrdata (j, y) = arrdata (j + 1, y)
ArrayName (j + 1, y) = t
Successivo y
Finisci se
Il prossimo
Il prossimo
End Sub
5 Creare il nuovo foglio di calcolo che conterrà i dati ordinati. Copiare e incollare il seguente codice sotto il codice elencato finora:
Sub New_Worksheet ()
WS Dim come foglio di lavoro
Set WS = Sheets.Add
End Sub
6 Copiare la matrice al nuovo foglio di lavoro. Copiare e incollare il seguente codice sotto il codice creato in precedenza:
Copy_Array Sub ()
[A1] .Resize (UBound (myArr), UBound (Application.Transpose (myArr))) = myArr
End Sub
7 Salvare la macro. Fare clic su "File", "Salva", dargli un nome e fare clic su "Salva".
8 Eseguire la macro. Aprire un foglio di lavoro che si desidera copiare e ordinare. Fai clic su "Strumenti", "Macro", selezionare la macro appena creata. Il nuovo foglio di lavoro apparirà e popolare automaticamente.