Macro pour copier des cellules dans un tableau suivant condition

Julien -  
 Julien -
Bonjour,

Je me permet de vous demander de l'aide pour la création d'une macro. J'ai essayé tant bien que mal, mais je bloque.

Mon souhait est de copier une ligne dans une feuille et excel et d'aller la copier dans un tableau excel seulement si "OK" est affiché. Le problème que j'ai est de lire une colonne ligne par ligne et que la macro s'arrête lorsque il voit le mot "OK" affiché et que la macro décale d'une cellule vers la droite pour pouvoir copier.
J'espère être suffisamment clair et que vous pourrez m'apporter votre aide.

Par avance merci?


A voir également:

5 réponses

scinarf Messages postés 1119 Date d'inscription   Statut Membre Dernière intervention   252
 
Bonjour, pouvez vous donner votre code ici que l'on regarde pourquoi ca ne marche pas.
0
Julien
 
Voila ce que j'ai écrit même si je sais qu'une grande partie est mauvaise, je vous remercie par avance de votre aide.

Sub Historique()
'
' Historique Macro
'

'
Sheets("BDD").Select 'sélection de la feuille ou doit être la macro
Range("E3:BY3").Select 'sélection de la ligne à copier
Selection.Copy

Dim FL1 As Worksheet, NoCol As Integer 'lecture de la colonne D ligne par ligne,
Dim NoLig As Long, Var As Variant 'macro prise sur un site mais je ne comprends pas tout,
Set FL1 = Worksheets("BDD") 'de plus je n'arrive pas a arreter la lecture lorsque
NoCol = 4 'le programme lit le mot "OK",
For NoLig = 1 To Split(FL1.UsedRange.Address, "$")(4) 'le décalage doit se faire sur la colonne de gauche grace à un offset?
Var = FL1.Cells(NoLig, NoCol)
Next
Set FL1 = Nothing

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False 'copie de la ligne précédemment copiée
Sheets("Suivi").Select 'retour sur la feuille principale
End Sub
0
scinarf Messages postés 1119 Date d'inscription   Statut Membre Dernière intervention   252
 
Bon, alors je toruve que c'est un brun compliqué comme code ... avec un bon mélange de copy/paste que je trouve pas très optimisé.

Sur quel Feuille faut il cherche la ligne à copier ? (appelée feuille source)
Quelles est la colonne qu'il faut tester pour savoir s'il y a le OK ? (colonne 4 soit la colonne D )
Combien y a t il de ligne en tout dans la feuille source ?
Combien y a t il de colonne dans la feuille source ? (d'après ce que je comprend de E à BY )

Comment est construit la feuille de destination ? (un simple tableau )
Quelles sont les colonnes à reporter dans la feuille de destination ?
Comment sont copiées les lignes dans la feuille de destination, les unes a la suite des autres ou il y a un classement fait a l'insertion ?

Faut il supprimer les ligne copier de la feuille source ?

On va refaire proprement cette macro qui me semble non approprié pour l'utilité que vous en avez.
0
Julien
 
Sur quel Feuille faut il cherche la ligne à copier ? Il faut chercher sur la feuille nommée BDD
Quelles est la colonne qu'il faut tester pour savoir s'il y a le OK ? Il faut en effet tester la colonne D
Combien y a t il de ligne en tout dans la feuille source ? Il faut lire de la ligne 8 à la ligne 373
Combien y a t il de colonne dans la feuille source ? Oui de E à BY(d'après ce que je comprend de E à BY )


Il faut copier les lignes E3 à BY3 dans la feuille BDD
Il faut lire la colonne D à partir de la ligne 8 jusqu'à la ligne 373 sur la feuille BDD
Il faut coller la ligne copier dans la ligne ou est le OK et le tableau va de E8 à BY373 (un décalage offset ne serait pas possible lorsque le programme voit le mot OK dans la colonne D?)


Par avance merci pour votre patience et votre aide précieuse.
0
Julien
 
Non il ne faut pas supprimer les cellules copiées.
Il faut faire un collage de la valeur uniquement
0

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

Posez votre question
scinarf Messages postés 1119 Date d'inscription   Statut Membre Dernière intervention   252
 
La feuille source est la même feuille que celle de destination?
0
Julien
 
Oui je copie la ligne sur la feuille BDD et je la recopie sur un tableau qui se situe plus bas dans la même page. (J'ai fait une impression écran de la feuille en question mais je ne sais pas comment la publier...)

Par avance merci
0
scinarf Messages postés 1119 Date d'inscription   Statut Membre Dernière intervention   252
 
Quelle est la ligne sur laquelle il faut copier ? (quand commence le second tableau ? )
0
Julien
 
Il faut copier la ligne E3 à BY3, et le second tableau commence à partir de la ligne 8 (de E8 à BY373), j'espère que ces informations vous aideront ou vous permettront de m'aiguiller pour réaliser ce code.

Par avance merci.
0