Déplacer une ligne selon une couleur sur une autre feuille [Résolu/Fermé]

Signaler
-
 sinane123 -
Bonjour,

J'aimerais déplacer automatiquement via une macro les lignes en bleu (soit les lignes avec une date de retour effective et une "X" dans la colonne "Complet") de ma première feuille dans ma feuille "ARCHIVES" afin d'avoir que mes encours dans ma feuille de travail.

http://cjoint.com/?0IluPy7W6f3

Merci d'avance à ceux qui se pencheront sur mon cas.

Bien cordialement


14 réponses

Messages postés
11760
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
17 février 2020
1 662
Bonsoir

Ça ne marchait pas car tu avais crée 2 macros avec le même nom, l'une dans module et l'autre dans le worksheet de la feuille
J'ai reporté celle de la feuille dans le module et supprimé les macros en trop et c'est bon
http://cjoint.com/?0Imxvv4aieT

Cdlmnt
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 87071 internautes nous ont dit merci ce mois-ci

bonjour
j'ai ajouté un boucle dans mon code
http://cjoint.com/?DInoLXMI8hN
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 87071 internautes nous ont dit merci ce mois-ci

Messages postés
11760
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
17 février 2020
1 662
Bonsoir

Après avoir supprimé la ligne vide du titre (en 7) :

http://cjoint.com/?0IlvAKmlwrT

Si les noms des feuilles changent les changer en début de macro (ALT F11 pour voir le code)

Cdlmnt
Bonsoir,

Tout d'abord merci, ça marche bien dans l'extrait de fichier que je vous ai envoyé mais sur mon fichier d'origine, ça ne fonctionne pas.

J'ai bien recopier le code dans mon fichier d'origine et renommer f="SORTIE PRESSE RTW"

Je ne vois pas pourquoi, est-ce le nom de la feuille "f" qui peut poser problème ?

Cordialement
bonjour,
j'arrive a résoudre votre probleme mais j'ai inseré une feuil1

Sub Bouton1_Cliquer()
Dim Num As Long
Dim celluletrouvee As Range
Dim Test As Range
Dim ligne As Integer
Dim col As Integer
Dim I As Integer
Dim TxtB As String
Dim L As Integer
'
'

Set celluletrouvee = Range("J:J").Find("X", LookIn:=xlValues, lookat:=xlWhole)
If celluletrouvee Is Nothing Then
MsgBox ("valeur pas trouvée !")
Else
ligne = celluletrouvee.Row
col = celluletrouvee.Column
MsgBox ("Valeur est Trouvée")
Rows([ligne]).Select
Selection.Cut
Sheets("Feuil1").Select
L = Sheets("Feuil1").Range("a200").End(xlUp).Row + 1
Rows([L]).Select
ActiveSheet.Paste
Sheets("Feuille ").Select
Selection.Delete Shift:=xlUp
End If
End Sub
Messages postés
11760
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
17 février 2020
1 662
Bonjour

Es tu sûr que les noms des onglets et les noms des feuilles dans la macro sont rigoureusement identiques ?
Il peux y avoir un espace avant ou après dans le nom d'un onglet qu n'est pas visible comme ça, mais comme il n'y en pas dans les noms dans la macro ça bug

Sinon il n'y pas de raison que ça ne fonctionne pas

Cdlmnt
Messages postés
8
Date d'inscription
vendredi 12 septembre 2014
Statut
Membre
Dernière intervention
15 septembre 2014

Messages postés
11760
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
17 février 2020
1 662
Re

Le code n'est pas celui que je t'avais envoyé mais il fonctionne sauf que tu es obligé de valider pour chaque ligne à archiver ! et qu'il place dans une autre feuille qu'Archives!

Par contre le problème venait bien du nom de ta feuille de base qui est nommée Feuille dans l'onglet AVEC un espace après (il a été repris dans la macro donc ça fonctionne)

Si tu veux que la mienne fonctionne il faut :
-soit remplacer dans la macro le nom de f "Feuille" par "Feuille "
-soit renommer l'onglet en supprimant l'espace après Feuille

Cdlmnt
Messages postés
8
Date d'inscription
vendredi 12 septembre 2014
Statut
Membre
Dernière intervention
15 septembre 2014

salut,
le fichier que vous envoyés ne contient aucun code.!!!!
Bonjour à tous,

Voilà ce que j'ai fait à partir du premier envoi de via55, j'ai remplacer les noms de feuilles et les colonnes "I" et "J" par "N" et "M" sur ligne If....

Ca fonctionnait sur l'exemple de via55, j'aimerais savoir pourquoi ça ne fonctionne pas avec moi.

http://cjoint.com/?3ImtaUBsKwU

Si ça ne fonctionne pas, je testerai ta méthode sinane123

Merci à tous les deux,

Cordialement
Messages postés
8
Date d'inscription
vendredi 12 septembre 2014
Statut
Membre
Dernière intervention
15 septembre 2014

bonsoir,
j'ai essayé de modifier votre fichier mes avec mon code vba plus tard je travaille sur la boucle pour déplacer tous les lignes simultanément
http://cjoint.com/?DImxLqmMirN
Messages postés
8
Date d'inscription
vendredi 12 septembre 2014
Statut
Membre
Dernière intervention
15 septembre 2014

bonsoir,

bon travail Mr via55
via55
Messages postés
11760
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
17 février 2020
1 662
Merci sinane123 ;)
Bonjour à tous les deux,

Je vois que j'ai lancé une compétition, c'est bien

Sinane123, effectivement, si on peut supprimer toutes les lignes en même temps et éviter le message valeur trouvée, ce serait super. Je n'ai pas encore transposé ton code dans mon fichier d'origine.

Via55, j'ai bien renommé mes feuilles méticuleusement dans mon fichier d'origine et ça ne fonctionne toujours pas, je ne suis décidément pas douée.

Bonne journée

Cordialement
Messages postés
11760
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
17 février 2020
1 662
Bonjour

J'ai posté un message hier expliquant que le probleme venait que tu avais crée 2 macros avec le même nom une dans Module 1 et une dans le worksheet de la feuille mais tu ne semble pas l'avoir vu
En mettant la bonne macro dans le module et en supprimant les autres ça fonctionne :
http://cjoint.com/?0InjZv99Rb9

Cdlmnt

"L'imagination est plus importante que le savoir." A. Einstein