Dépassement de capacité Tableau dynamique VBA

hehee

XLDnaute Nouveau
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 :?

Des pistes de solutions?

Merci

Hehee
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : Dépassement de capacité Tableau dynamique VBA

Bonjour hehee,

Peut-être as tu simplement atteint la taille limite d'un tableau pouvant tenir en mémoire ?

Quel est le nombre de cellules passées au tableau ?

Réduire quelque peu la taille (prendre une partie de usedRanged) et voir si ça passe...
 
Dernière édition:

hehee

XLDnaute Nouveau
Re : Dépassement de capacité Tableau dynamique VBA

Re,
de quelles sortes sont les valeurs que tu déposes dans ton tableau.
tu peux mettre:
Code:
Dim tab_transaction()as long
A+

Regarde la pièce jointe 890744

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 ??
 

Pièces jointes

  • 2013-06-01 10-52-18.jpg
    2013-06-01 10-52-18.jpg
    12.6 KB · Affichages: 56

hehee

XLDnaute Nouveau
Re : Dépassement de capacité Tableau dynamique VBA

Bonjour hehee,

Peut-être as tu simplement atteint la taille limite d'un tableau pouvant tenir en mémoire ?

Quel est le nombre de cellules passées au tableau ?

Réduire quelque peu la taille (prendre une partie de usedRanged) et voir si ça passe...


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 ??
 

hehee

XLDnaute Nouveau
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

J'ai tout de même un i7 8go de RAM lol
 
Dernière édition:

laetitia90

XLDnaute Barbatruc
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
 

Discussions similaires

Réponses
10
Affichages
525
Réponses
1
Affichages
364

Statistiques des forums

Discussions
312 224
Messages
2 086 410
Membres
103 201
dernier inscrit
centrale vet