Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

[vba]Erreur d'execution 1004

tik

XLDnaute Nouveau
bonjour,

ma macro plante sur cette ligne, sans que je comprenne pourquoi:
Code:
Sheets("ADV Powa").Range("B3").Resize(UBound(Tablo, 1), UBound(Tablo, 2)).Value = Tablo

Merci
 

Roland_M

XLDnaute Barbatruc
Re : [vba]Erreur d'execution 1004

bonjour,

si ton tablo est variant il est possible que ce soit plutôt 0 to ?
tout dépend de la configuration de ton classeur au point de vue déclaration exp Base 1 !?
 

pierrejean

XLDnaute Barbatruc
Re : [vba]Erreur d'execution 1004

RE

Salut Roland_M

A mon avis , il ne peut pas y avoir de truc lié aux bornes du tablo

Peux-tu poster une copie de ton fichier sans données confidentielles et limité à ce qui pose problème ?
 
G

Guest

Guest
Re : [vba]Erreur d'execution 1004

bonjour,

Roland, Pierre-Jean (ravi de vous croiser)

@tik: si tu ne veux pas perdre une colonne sur la deuxième dimension (0 to 1960) :
Resize(UBound(tablo, 1), UBound(tablo, 2) + 1).Value

Ceci chez moi(xl 2010), fonctionne:
Code:
   Dim i As Integer, j As Integer
    Dim tablo(1 To 8, 0 To 1960)
    For i = 1 To 8
        For j = 0 To 1960
            tablo(i, j) = CStr(i) & "|" & CStr(j)
        Next
    Next
    Range("A1").Resize(UBound(tablo, 1), UBound(tablo, 2) + 1).Value = tablo

A+
 

tik

XLDnaute Nouveau
Re : [vba]Erreur d'execution 1004


j'ai déjà essayé avant de poster
 
G

Guest

Guest
Re : [vba]Erreur d'execution 1004

Re,

Alors pourquoi dans ton post #1 tu as Ubound(Tablo,2) et non pas Ubound(Tablo,2)+1

Je viens de voir en remontant le fil que tu as joins un fichier.
Je n'ai pas eu d'erreur sur :
Code:
Sheets("ADV Powa").Range("B3").Resize(UBound(Tablo, 1), UBound(Tablo, 2)).Value = Tablo

Par contre les SELECT dans les boucle ralentisse le fonctionnement de ta macro.
Il vaut mieux référencer les celules dans des variables plutôt que les selectionner.
Ta feuille de calcul est un tableau indicé de 1,1 pour A1 à 1048576,16384 pour la cellule XFD1048576

Code:
Dim C as range
Set C = Range("a" & i)
'Ou 
Set C = Cells(i,1) ' ligne i colonne 1)

Au lieu de
Code:
Range("a" & i).Select
A+
 
Dernière modification par un modérateur:

pierrejean

XLDnaute Barbatruc
Re : [vba]Erreur d'execution 1004

Re

Hello Hasco ravi également de te croiser

@ tiki
Chez moi et sous 2007 , pas de plantage
OK avec Hasco pour le +1
Par contre trop de Select a mon gout (et pas celui qui irait bien: Sheets("Sheet1").select )
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…