Bonjour,
Je tente de prendre des données d'une feuille Excel et de les mettre dans un tableau dynamique VBA.
J'ai réussis à le faire une fois, mais lorsque je suis venu pour le refaire, un message d'erreur "DÉpassement de capacité" apparait.
Voici mon code :
Code:
Dim tab_transaction()
Dim tab_LT()
'Met les données dans le tableau dynamique
tab_transaction = Sheets("Transactions").Range("A2").CurrentRegion.Value '--> Bogue ici
'Met les données dans le tableau dynamique
tab_LT = Sheets("LT violé").Range("A2").CurrentRegion.Value '--> Fonctionne
Le problème se situe au tableau : "tab_transaction".
PAr contre, si je saute la ligne et que je vais à "Tab_LT = .." , celui-ci fonctionne :?
Comme tu peux le voir, il y a des dates, des chiffres, des lettres, bref de tout.
Pourtant, j'ai réussis à faire l'opération la première fois, mais plus maintenant. Est-ce qu'il faut vider la mémoire à la fin de la procédure ce qui aurait comme impact que je ne sois plus capable de le refaire ??
Pourtant, j'ai réussis à faire l'opération la première fois, mais plus maintenant. Est-ce qu'il faut vider la mémoire à la fin de la procédure ce qui aurait comme impact que je ne sois plus capable de le refaire ??
Re : Dépassement de capacité Tableau dynamique VBA
difficile car on a pas de fichier cependant tu peux essayer ="" a la place de nothing
OU tout simplement comme stipule Mapomme ton tableau est trop petit.
Re : Dépassement de capacité Tableau dynamique VBA
Bizarre, effectivement si je prends moins de colonnes, tout est OK. C'est tout de même bizarre que j'ai pu le faire la première fois lol! Comme si j'avais perdu de la mémoire depuis la première fois lol
Re : Dépassement de capacité Tableau dynamique VBA
bonjour tous
pour liberer memoire il faut utiliser erase .....nothing en generale c'est suppression object
Code:
Erase tab_transaction
en fin de code
declare seulement comme cela les parentheses servent a rien dans ton cas
dim tab_transaction
forcement du variant vu que tu as un peu tous chiffres lettres date
essaye en evitant CurrentRegion dans un premier temps
tu connais les dimensions de ton tableau du moins le depart a2
plein de code pour trouver la longeur & largeur
un exemple parmi tant d'autres
Code:
Dim t, r As Long, c As Long
c = Cells.Find("*", , , , xlByColumns, xlPrevious).Column
r = Cells.Find("*", , , , xlByRows, xlPrevious).Row
t = Cells(2, 1).Resize(r, c).Value