Function M_Charge(plage As Range, Optional feuilles As String = "") As Variant
Dim cel As Range, i As Long, j As Integer, tablo() As Variant
Dim feuille1 As String, feuille2 As String
Application.Volatile ' Permet un recalcul automatique
i = -1
' Définition de la feuille par défaut si aucune feuille n'est mentionnée
If feuilles = "" Then feuilles = ActiveSheet.Name & ":" & ActiveSheet.Name
' Récupération de la feuille de début et la feuille de fin
feuille1 = Left(feuilles, InStr(feuilles, ":") - 1)
feuille2 = Right(feuilles, Len(feuilles) - InStr(feuilles, ":"))
' Passage en revue de toutes les feuilles entre Feuille1 et Feuille2
For j = Sheets(feuille1).Index To Sheets(feuille2).Index
For Each cel In plage ' Pour chacune des cellules de la plage
i = i + 1
ReDim Preserve tablo(i) ' J'incrémente la table en cours de création
tablo(i) = Sheets(j).Cells(cel.Row, cel.Column).Value ' Récupélation de la valeur
Next
Next j
M_charge = tablo ' Affectation du tableau à la fonction (la matrice est créée)
End Function