adn28
Messages postés91Date d'inscriptionmercredi 9 février 2005StatutMembreDernière intervention16 mars 2005
-
1 mars 2005 à 14:37
adn28
Messages postés91Date d'inscriptionmercredi 9 février 2005StatutMembreDernière intervention16 mars 2005
-
1 mars 2005 à 16:36
Bonjour,
Je voudrais envoyer des données qui sont dans un tableau, dans un autre tableau
qui est dans une autre feuille, en la feuil2 à la feuil1, sur Excel bien sur,
j'ai utilisé cette méthode mais ça marche pas, est ce que quelqu'un voit une erreur :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For i = 23 To 47
'Si la cellule lue est vide alors
If Feuil4.Cells(i, 2) = "" Then
'Je recopie les infos choisis
Feuil4.Cells(i, 2) = Feuil2.Cells(i, 2)
Feuil4.Cells(i, 3) = Feuil2.Cells(i, 3)
Feuil4.Cells(i, 4) = Feuil2.Cells(i, 4)
'sort de la boucle pour éviter de les recopier plein de fois
Exit For
End If
Next
cs_trabice
Messages postés328Date d'inscriptionmercredi 26 novembre 2003StatutMembreDernière intervention24 novembre 20051 1 mars 2005 à 14:52
lu
je ne sé pa ou est ton pb mé pkoi faire un exit for dans un for 23 to 47 ?
ca ne marchera k'une fois tu en es conscient?
For i = 23 To 47
'Si la cellule lue est vide alors
If Feuil4.Cells(i, 2) = "" Then
'Je recopie les infos choisis
Feuil4.Cells(i, 2) = Feuil2.Cells(i, 2)
Feuil4.Cells(i, 3) = Feuil2.Cells(i, 3)
Feuil4.Cells(i, 4) = Feuil2.Cells(i, 4)
'sort de la boucle pour éviter de les recopier plein de fois
Exit For
End If
Next
adn28
Messages postés91Date d'inscriptionmercredi 9 février 2005StatutMembreDernière intervention16 mars 2005 1 mars 2005 à 15:10
j'ai pas compris ce que tu voulais dire, mais en j'ai changé la donne,
je les ai mis dans un bouton mais quand je clique, ça envoi que la 1ere ligne?
Alors que je veux tout envoyer en un seul click?
Private Sub cmdFin_Click()
For i = 23 To 47
'Si la cellule lue est vide alors
If Feuil4.Cells(i, 2) = "" Then
'Je recopie les infos choisis
Feuil4.Cells(i, 2) = Feuil2.Cells(i, 2)
Feuil4.Cells(i, 3) = Feuil2.Cells(i, 3)
Feuil4.Cells(i, 4) = Feuil2.Cells(i, 4)
'sort de la boucle pour éviter de les recopier plein de fois
Exit For
End If
Next
mrdep1978
Messages postés402Date d'inscriptionjeudi 25 novembre 2004StatutMembreDernière intervention 7 juin 20097 1 mars 2005 à 15:36
Tu testes sur la mauvaise feuille + Tu essaies de copier les colonnes 2 à 4 des lignes poure lesquelles la colonne 2 est vide.
Private Sub cmdFin_Click()
For i = 23 To 47
'Si la cellule lue n'est pas vide alors
<STRIKE>If Feuil4.Cells(i, 2) = "" Then
</STRIKE> If Feuil2.Cells(i, 2) <> "" Then
'Je recopie les infos choisies
Feuil4.Cells(i, 2) = Feuil2.Cells(i, 2)
Feuil4.Cells(i, 3) = Feuil2.Cells(i, 3)
Feuil4.Cells(i, 4) = Feuil2.Cells(i, 4)
Else 'sort de la boucle pour éviter de les recopier plein de fois
Exit For
End If
Next
cs_trabice
Messages postés328Date d'inscriptionmercredi 26 novembre 2003StatutMembreDernière intervention24 novembre 20051 1 mars 2005 à 15:40
jolie remarque pr le feuil4 a la place de feuil2 mé je ne suis pas daccord pour le else exit for...
For i = 23 To 47
'Si la cellule lue n'est pas vide alors
<STRIKE>If Feuil4.Cells(i, 2) = "" Then
</STRIKE> If Feuil2.Cells(i, 2) <> "" Then
'Je recopie les infos choisies
Feuil4.Cells(i, 2) = Feuil2.Cells(i, 2)
Feuil4.Cells(i, 3) = Feuil2.Cells(i, 3)
Feuil4.Cells(i, 4) = Feuil2.Cells(i, 4)
Else 'sort de la boucle pour éviter de les recopier plein de fois
Exit For
End If
Next
cs_trabice
Messages postés328Date d'inscriptionmercredi 26 novembre 2003StatutMembreDernière intervention24 novembre 20051 1 mars 2005 à 15:42
euh...
la feuille de destination c Feuil4?
dc il peut bien tester If Feuil4.Cells(i, 2) = "" Then
mé il pourrait aussi test feuill2.cells(i,2)<> ""
donc :
If Feuil4.Cells(i, 2) = "" and feuill2.cells(i,2)<> "" then
mrdep1978
Messages postés402Date d'inscriptionjeudi 25 novembre 2004StatutMembreDernière intervention 7 juin 20097 1 mars 2005 à 15:47
Ben moi, je suis d'accord avec mon Else.
Si pour une raison qc, il considère qu'après la première ligne vide, il n'a plus d'autres lignes de données, il peut s'arrêter de parcourir le reste des lignes.
Tout dépend de ce qu'il veut copier et des trous qu'il peut avoir dans la zone à copier.
cs_trabice
Messages postés328Date d'inscriptionmercredi 26 novembre 2003StatutMembreDernière intervention24 novembre 20051 1 mars 2005 à 16:05
Si pour une raison qc, il considère qu'après la première ligne vide, il n'a plus d'autres lignes de données, il peut s'arrêter de parcourir le reste des lignes.
oui en effet
pa bete du tout.
autant pour moi
fabrice