J'ai les erreurs suivantes sur la ligne "rTemp.Value = vaTemp". Qu'est-ce que je fais mal ici? Suis-je sur la bonne voie?Comment copier une plage dans un classeur temporaire et y renvoyer une référence avec une fonction vba?
Function CreateTempRange(rSource As range) As range
' Declarations
Dim rTemp As range
Dim vaTemp As Variant
Dim wsTemp As Worksheet
Dim wbTemp As Workbook
' Open temp worksheet
Set wbTemp = Workbooks.Add
Set wsTemp = wbTemp.Worksheets.Add
' Copy range into it and get a reference to the temp range
vaTemp = rSource.Value
Set rTemp = wsTemp.range("A1").Resize(UBound(vaTemp, 1), UBound(vaTemp, 2))
rTemp.Value = vaTemp
' Return the temp range
Set CreateTempRange = rTemp
End Function
Remarque: Cette fonction est destinée à être utilisée par d'autres fonctions et non appelée directement à partir d'une cellule.
Ma gamme sera une table pas une seule dimension. Je veux juste copier la gamme (lignes et cols) à la feuille de travail temporaire et renvoyer une référence à elle. –
Ah, j'étais très confus ce que tu voulais. Je suppose que cela concerne certaines de vos autres questions. Pouvez-vous poster une question avec plus de détails sur ce que vous essayez d'accomplir globalement avec cette table temporaire et je vais voir si je peux faire quelque chose d'un peu plus utile. –