Copier-Coller

jijudu Messages postés 211 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 3 septembre 2009 - 9 juin 2008 à 17:43
us_30 Messages postés 2065 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 14 mars 2016 - 13 juin 2008 à 23:06
Slt ! Voila un code qui fonctionne mais ne donne pas le résultat voulu



Sub egjio()
Dim Table() As Double
ReDim Table(2, 1)



Dim ae As Integer
Dim aebis As Integer
Dim op As Integer
Dim opbis As Integer





For ae = 1 To 3
    For aebis = 1 To 2
        Table(op, opbis) = Cells(ae, aebis)
    Next aebis
Next ae





Dim poiu As Integer
Dim poiuBis As Integer



For poiu = 0 To UBound(Table, 1)
    For poiuBis = 0 To UBound(Table, 2)
        Cells(5, 13).Offset(poiu, poiuBis).Value = Table(poiu, poiuBis)
    Next poiuBis
Next poiu
End Sub

En faite toutes les cellules (où  est afficher le résultat) sont à 0 sauf la 1° qui affiche la deniére cellule du copier.


la macro marche po :(


Merci des aides!^^


+

10 réponses

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
9 juin 2008 à 20:43
Commençons par le commencement !!!

Regarde ta première double boucle. Vérifie à chaque tour, chaque fois que tu incrémente aebis, ce que vaut op et opbis, vérifie dans quelle case du tableau tu stocke la valeur que tu as, par la suite, l'intention de coller

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
us_30 Messages postés 2065 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 14 mars 2016 10
9 juin 2008 à 23:07
Bonsoir,

Donc Casy joue à la devinette pédagogique... op sss... j'ai rien dit...

Amicalement,
Us.
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
10 juin 2008 à 04:49
umm umm ummmm ...

Dim op As Integer
Dim opbis As Integer
For ae = 1 To 3
    For aebis = 1 To 2
        Table(op, opbis) = Cells(ae, aebis)
    Next aebis
Next ae

autant faire directement
Table(0, 0) = Cells(3, 2)

c'est plus clair en couleur non?

<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
10 juin 2008 à 06:08
Bien vu PCPT
Faut dire que les noms de variables sont clairs ! On s'y perd rapidement, je trouve

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jijudu Messages postés 211 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 3 septembre 2009
10 juin 2008 à 09:00
Hmmmmm
ReDim Table(2, 1)                      'ReDim Table(NbreDeLigne, NbreDeColonne)
For ae = 1 To 3
    For aebis = 1 To 2
        Table(op, opbis) = Cells(ae, aebis)
op=op+1
opbis=opbis+1
    Next aebis
Next ae

mais bon le programme bugg du fait que op devient >2 et opbis devient >1 ....
0
Mikaels35 Messages postés 146 Date d'inscription dimanche 23 janvier 2005 Statut Membre Dernière intervention 17 novembre 2009 2
10 juin 2008 à 09:31
Et si tu essayais tout simplement

ReDim Table(2, 1)                      'ReDim Table(NbreDeLigne, NbreDeColonne)
For ae = 1 To 3
    For aebis = 1 To 2
        Table(ae-1, aebis-1) = Cells(ae, aebis)


    Next aebis
Next ae




@+
0
jijudu Messages postés 211 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 3 septembre 2009
10 juin 2008 à 09:36
Hmm non, sa ne marche pas : incompatibilité de type,
Table(ae-1, aebis-1) = Cells(ae, aebis)
0
jijudu Messages postés 211 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 3 septembre 2009
11 juin 2008 à 18:07
Hmmmmmmmmmmmm,
(Allez jrelance !^^)
na ça n'inspire personne,

:(

A toute!!; )
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
11 juin 2008 à 18:26
incompatibilité type, le message est clair
ton tableau attend un double et tu lui attribues sans doute une chaine....

on ne peut pas savoir ce que contiennent tes cellules....
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
0
us_30 Messages postés 2065 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 14 mars 2016 10
13 juin 2008 à 23:06
Bonsoir,

Oui... et pour éviter de trop coder et aller à la vitesse de l'éclair, tu peux étudier ce code ci-après :

Sub egjio()




'Met les cellules A1 à C3 dans le tableau

Dim Table()
Table = Range(Cells(1, 1), Cells(3, 3))






'Met le tableau Table dans les cellules A1 à C3
'Table(1, 3) = "e"

Range(Cells(1, 1), Cells(3, 3)) = Table




End Sub




Amicalement,
Us.
0
Rejoignez-nous