2022
excel - Sort Dictionary Keys using ArrayList - Stack Overflow
Option Explicit
Public Sub Test()
Dim wb As Workbook
Set wb = ActiveWorkbook
Dim ws As Worksheet
Set ws = wb.ActiveSheet
Dim rng As ListObject
Set rng = ws.ListObjects(1)
Dim arr() As Variant
arr = Application.Transpose(rng.DataBodyRange.Value)
Dim d As Scripting.Dictionary
Set d = GetUnique(arr)
Dim tempD As Scripting.Dictionary
Set tempD = New Scripting.Dictionary
Set tempD = SortDictionary(d)
Dim key As Variant
For Each key In d.Keys
Debug.Print key, d.Item(key)
Next key
End Sub
Private Function GetUnique(ByRef arr() As Variant) As Scripting.Dictionary
Dim v As Variant
Set GetUnique = New Scripting.Dictionary
On Error Resume Next
For Each v In arr
GetUnique.Add v, v
Next v
End Function
Private Function SortDictionary(dicObject As Scripting.Dictionary, Optional xlSortOrder As xlSortOrder = xlAscending) As Scripting.Dictionary
Dim obj As Object
Set obj = CreateObject("System.Collections.ArrayList")
Dim v As Variant
With obj
For Each v In dicObject
.Add v
Next v
.Sort
End With
Dim tempDic As Scripting.Dictionary
Set tempDic = New Scripting.Dictionary
Dim k As Variant
For Each k In obj
tempDic.Add k, dicObject(k)
Next k
Set SortDictionary = tempDic
End Function
VBA ArrayList - A Complete Guide - Excel Macro Mastery
Contents :
1 Quick Guide to the VBA ArrayList
2 Description
3 Download the Source Code
4 Declare and Create the VBA ArrayList
4.1 Late Binding
4.2 Early Binding
4.3 VBA ArrayList Automation Error
5 Adding Items to the VBA ArrayList
6 Reading through an ArrayList
7 Sorting
8 Cloning the VBA ArrayList
9 Copying from an VBA ArrayList to an Array
10 Writing Directly to a Range
11 Array to a VBA ArrayList(1D)
12 Remove All Items from the ArrayList
13 What’s Next?
[vba] -- return an ArrayList from a function
Hello Paul
Is there a way to return an ArrayList from a function, like a bellow?
This is the code I have implemented
Public Function ReturnArrayList() As ArrayList // or return type As Variant
Dim alist As ArrayList
Set alist = New ArrayList // Early Binding
alist.Add “a”
alist.Add “b”
alist.Add “c”
alist.Add “240”
ReturnArrayList = alist
End Sub
Sub GetArrayList()
Dim alist As ArrayList
alist = ReturnArrayList()
MsgBox alist(0)
End Sub
Thank you,
Nishan
Reply
Paul Kelly
Paul Kelly on December 24, 2019 at 7:56 am
Hi Nishan,
You need to use Set when returning an object.
2012
Les meilleurs cours et ressources pour Excel
Visual Basic
Cours disponible au format PDF Cours visible on-line Cours téléchargeable au format html
fr
Piloter Excel à partir de Visual Basic
par Sébastien Curutchet
Ce tutoriel montre comment piloter Excel depuis Visual Basic.
Création : 18 Décembre 2002
menu Dot Net
Cours disponible au format PDF Cours visible on-line Cours téléchargeable au format html
fr
Piloter Excel en Dot Net
par Skalp
Lire et/ou écrire dans un fichier Office Excel est chose courante dans nos développements. Cependant, ce n'est pas évident pour le commun des développeurs. Cet article fournit une base très simple permettant de lire et d'écrire dans un fichier Excel en Dot Net.
Création : 22 Aôut 2007
menu Access
Cours disponible au format PDF Cours visible on-line Cours téléchargeable au format html
fr
La communication entre Access et Excel
par Cafeine
Cet article montre comment faire communiquer Access et Excel.
Création : 01 Septembre 2005
menu PHP
Cours disponible au format PDF Cours visible on-line Cours téléchargeable au format html
fr
Pilotage d'Excel via PHP 4.3.3, grâce l'objet COM
par Stephane Eyskens
Cet article montre comment créer des fichiers Excel de manière dynamique à l'aide de l'objet COM.
Création : 24 Avril 2004
Cours disponible au format PDF Cours visible on-line Cours téléchargeable au format html
fr
Spreadsheet_Excel_Writer en PHP
par Gérard Ernaelsten
Une des demandes les plus fréquentes dans les développements PHP, c'est la génération de fichiers Excel. Dans cet article nous allons générer des fichiers Excel sans passer par la méthode des CSV, de COM, ni même de Microsoft Excel ou OpenOffice.org. Tout cela en passant par un fork d'une librairie Perl.
Création : 10 Mars 2008
Cours disponible au format PDF Cours visible on-line Cours téléchargeable au format html
fr
Lecture des fichiers OpenXML avec PHP 5
par Eric Grimois
Cet article propose de vous démontrer que PHP fait excellent ménage avec le nouveau format de document introduit par Microsoft, OpenXML.
Création : 06 Février 2007
Cours disponible au format PDF Cours visible on-line Cours téléchargeable au format html
fr
Introduction à PHPExcel
par Gérard Ernaelsten
Nous allons voir dans cet article une bibliothèque orientée objet (PHP 5), la génération de feuilles de calcul sous différents formats d'exportation et/ou d'enregistrement.
Création : 05 Février 2009
2011
Les meilleurs cours et ressources pour Excel
Programmation
L'environnement de développement et de programmation
Les variables
UserForms et contrôles
Les évènements
Autres
Perfectionnement
Support de cours complet pour le VBA d'Excel
(via)Nous allons dans ce cours voir ou revoir les bases de la programmation Visual basic et la manipulation du modèle objet de Microsoft Excel.
Si vous n'avez jamais approché de près ou de loin un langage informatique, vous risquez de trouver le début de ce cours extrêmement complexe. Certains concepts évoqués au début de ce cours ne seront abordés que plus loin dans celui-ci. Lisez le une fois rapidement sans entrer dans le détail, cela devrait vous permettre de vous imprégner de la terminologie.
Téléchargements :
Télécharger formationVBA.pdf (226 pages - 3 Mo) - Téléchargement de secours
Exemples de procédures Visual Basic Edition Applications pour Excel
by 1 otherCes quelques modestes pages n'ont qu'un but : montrer quelques exemples de procédures Visual Basic Edition Applications pour Excel en anglais.
2007
1
(9 marks)