XL 2010 Erreur dexécution 13 - variable tablo

Goufra

XLDnaute Occasionnel
Bonjour

J’ai un bug que je n’arrive pas à résoudre – erreur d’exécution ‘13’, incompatibilité de type


Test5 avec cette ligne de code

Range("E1").Resize(UBound(tablo, 1), UBound(aa, 2)) = application.Transpose(Application.Transpose(tablo))



Test6 avec cette ligne de code

Range("E1").Resize(UBound(aa, 2), UBound(tablo, 1)) = Application.Transpose(tablo)


Fichier joint

Je tourne en rond.
Je vous remercie par avance pour l’aide que vous voudrez bien m’apporter

Bonne journée

Goufra
 

Pièces jointes

  • Goufra Tests.xlsm
    15.1 KB · Affichages: 33

Goufra

XLDnaute Occasionnel
Bonsoir merci à vous deux
herve pour le test 5 c'est ok et j'ai compris.

Klin89, pour le test 6
ReDim Preserve tablo(C - 1)
tablo(C - 1) = Application.Index(aa, a)

Je ne comprends pas tablo(c-1)
C est égal à 10 pourquoi c-1
Si tu pouvais m'expliquer

Navré de t'importuner
Avec mes remerciements
Goufra
 

herve62

XLDnaute Barbatruc
Supporter XLD
Bonjour
J'ai pas précisé , mais c'est pour test5 et 6 cela marche pour les 2
en fait quand tu Redim tu ne gardes que la dernière valeur , Or tu boucles !! donc tu effaces en faisant 1 to c à chaque fois tu ajoutes et garde les valeurs précédentes
Si tu veux tout comprendre tu jettes un oeil ici : http://boisgontierjacques.free.fr/pages_site/tableaux.htm#Redimentionnement
Ce site est une référence pour nous ici
 

klin89

XLDnaute Accro
Re Goufra,

Effectivement, ton tableau comporte 10 éléments indicés de 0 à 9
La restitution s'effectue comme ceci puisque l'indice inférieur est égale à 0
VB:
Range("E1").Resize(UBound(tablo, 1) + 1, UBound(aa, 2)) = Application.Transpose(Application.Transpose(tablo))
J'ai tellement l'habitude de travailler avec des variables tableaux dont l'indice inférieur est égal à 1 :cool:

klin89
 

Goufra

XLDnaute Occasionnel
Bonjour

J’ai un bug que je n’arrive pas à résoudre – erreur d’exécution ‘13’, incompatibilité de type


Test5 avec cette ligne de code

Range("E1").Resize(UBound(tablo, 1), UBound(aa, 2)) = application.Transpose(Application.Transpose(tablo))



Test6 avec cette ligne de code

Range("E1").Resize(UBound(aa, 2), UBound(tablo, 1)) = Application.Transpose(tablo)


Fichier joint

Je tourne en rond.
Je vous remercie par avance pour l’aide que vous voudrez bien m’apporter

Bonne journée

Goufra
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 379
Messages
2 087 769
Membres
103 662
dernier inscrit
rterterert