Si une cellule contient le mot x, copier la ligne vers une autre feuille

Bonjour mes loups !

Je recherche une solution pour un fichier Excel.

J'ai créer un tableau pour des transmissions téléphoniques, je voudrais mettre une condition dans le sens ou :

" Si dans ma feuille "Transmissions téléphoniques" il y a le mot "mél" le copier dans la feuille "Mélanie"" et ainsi de suite pour chaque mot de la colonne B.

J'ai fait une condition de ce type : =SI('Transmissions téléphoniques'!C:C="Mél";'Transmissions téléphoniques'!B:B;"")

Le problème c'est que il me copie les bon éléments mais dans les mêmes ligne d’origine, de ce fait je me retrouve avec des lignes vides dans ma nouvelle feuille.

Où est mon erreur ? Est-ce que je suis obligée de passer par une Macro ?

Merci d'avance pour votre aide. Je commence à bloquer après nombreuses lectures de sujets équivalent..

Des bises !.

Bonjour,

Je pense qu'il faut passer par un TCD, enfin c'est ce que je ferai,

Cf ci-joint,

Cordialement,

Bonjour massari59264,

L'idée du TDC me plaît bien mais j'avoue que je ne sais pas trop comment il fonctionne.

Il faut que je me renseigne.

Fonctionne t'il si je met mon fichier sur google drive ?

Cordialement

Bonjour MCG, bonjour massari59264 ... décidément on se retrouve

Personnellement j'utiliserais la fonction de filtre automatique.

Je vais chercher un exemple approché.

A tester, n’hésite pas si remarques

Re'

Je viens de regarder vite fait ton travail, c'est sympa et cela à l'air de corresponde à ce que je voulais ! merci beaucoup !

Je m'y repenche demain matin, je suis en réunion dans l'aprem :/

Merci

Des bises !

Il s'agit simplement de l'utilisation d'un filtre avancé.

J'ai simplifié la macro ... elle fait 2 lignes

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    If Sh.Name = "Transmissions téléphoniques" Then Exit Sub
    Sheets(1).ListObjects(1).Range.AdvancedFilter Action:=xlFilterCopy, _
            CriteriaRange:=Sh.Range("A1").CurrentRegion, CopyToRange:=Sh.Range("A5").CurrentRegion.Resize(1), Unique:=False
End Sub

supprime le reste, c'est inutile !

Hello,

Merci pour le travail que tu as fourni

J'avais une question, pourquoi je retrouve dans chaque onglet un deuxième tableau ?

De plus j'ai réfléchis, je n'ai pas besoin d'avoir le destinataire dans les autres onglets car de logique on l'a noté dans la feuille "transmissions téléphonique"

J’espère que tu vois ce que je veux dire

Dans chaque onglet, il y a 2 tableaux

- celui du haut précise les critères, j'avais mis en 2 lignes car il s'agit de critères de type OU BIEN je réponds à la première ligne, OU BIEN je réponds à la seconde ... je pense que l'on peux masquer les lignes 1 à 4

- le second donne le résultat du filtre

On peut supprimer des colonnes du tableau, L'important est que les critères commencent en A1 et le résultat en A5 conformément à la macro.

Par contre ... tu ne peux pas ajouter des données dans les onglets car il ne s'agit que d'une copie de l'onglet "maître". Si tu veux le faire, c'est un tout autre sujet un peu plus complexe. Reprécise moi ce que tu souhaites faire ...

Bonjour Steelson,

J'essaye de comprendre ce que tu viens de dire mais je ne comprends pas ^^

Merci tout d'abord du temps passé dessus.

Tout me convient

Parcontre, je voulais savoir je dois mettre ce fichier en partage sur google drive sheets. J'ai l'impression que cela ne fonctionne pas du coup.. :/

Je n'ai jamais utilisé google drive sheets ... donc je vais avoir de la difficulté à répondre.

Néanmoins, ma solution repose uniquement sur ce que l'on appelle un filtre avancé.

1- Est-ce que google prend en compte cette fonctionnalité ?

2- et est-ce que google peut faire tourner des macros ?

Selon les réponses, il faudra changer de fusil d’épaule et faire une macro plus spécifique.


Je reviens quand même sur ma question : est-ce que tu souhaites / as besoin de rajouter des informations sur cette "autre" feuille ?

Je n'ai jamais utilisé google drive sheets ... donc je vais avoir de la difficulté à répondre.

Néanmoins, ma solution repose uniquement sur ce que l'on appelle un filtre avancé.

1- Est-ce que google prend en compte cette fonctionnalité ?

2- et est-ce que google peut faire tourner des macros ?

Selon les réponses, il faudra changer de fusil d’épaule et faire une macro plus spécifique.


Je reviens quand même sur ma question : est-ce que tu souhaites / as besoin de rajouter des informations sur cette "autre" feuille ?

D'accord, je ne pense pas que google drive prennent des macros, du moins je ne pense que avec mon niveau cela soit faisable.

Merci quand même

Euh, yes, je pensais rajouter des cases à cocher dans la colonne "saisie logiclic" mais avec le bouton formulaire, je trouve ça pas très simple.. :/

De plus je reviens sur les deux tableaux dans les onglets, au final je voudrais faire apparaître dans les onglets "Mélanie, Charlotte, Liza, Alex" que les messages qui leurs sont destinées.

Aujourd’hui, on a certes le message qui sont destinée + le message qui a été envoyée.

Je m'explique : dans l'onglet T_Tél quand je note en Emmeteur : Mélanie et Destinataire : Charlotte, le message s'affiche bien chez onglet Charlotte en destinataire en disant Mélanie à dit ...

mais on retrouve aussi chez onglet Mélanie en emmeteur..

En soit je voudrais que les colonnes emmeteur dans les onglets, mais si je l'ai supprime cela ne fonctionne plus après.

Je suis perdue ..

Pas de soucis pour ne mettre que les messages destinées à XXX.

Pas de soucis pour reporter les valeurs ajoutées automatiquement sans intervention particulière dans la "base de données" constituée par la feuille 1.

MAIS :

Pour google sheets, voici ce que j'ai lu :

La seule différence [entre excel et google] c’est que les feuilles de calculs sont exécutées et gérées par votre navigateur. Du coup, pour créer ses macros, Google a choisi le langage JavaScript.

Donc les macros d'excel ne sont pas a priori reprises, il faut ré-écrire en JavaScript. Je n'aurais pas le temps de développer.

J'avais lu que tu étais en XL2016.

Pas de soucis pour ne mettre que les messages destinées à XXX.

Pas de soucis pour reporter les valeurs ajoutées automatiquement sans intervention particulière dans la "base de données" constituée par la feuille 1.

MAIS :

Pour google sheets, voici ce que j'ai lu :

La seule différence [entre excel et google] c’est que les feuilles de calculs sont exécutées et gérées par votre navigateur. Du coup, pour créer ses macros, Google a choisi le langage JavaScript.

Donc les macros d'excel ne sont pas a priori reprises, il faut ré-écrire en JavaScript. Je n'aurais pas le temps de développer.

J'avais lu que tu étais en XL2016.

Je te remercie pour tes informations.

Je pense plutôt partager le fichier sur onedrive. Je pense pas être impactée dans ce cas là. (fin je l'espère) ^^

ok

Donc je vis reprendre le projet, changer la macro pour que les modifications apportées sur l'extrait se répercutent sur la pseudo-BdD

Bonjour,

Voici une nouvelle version ...

1- Lors de la sélection d'une feuille, seules les données relatives aux critères notés en A1:A2 sont affichées.

2- Dans chaque feuille, toute modification des colonnes D à H sont répercutées sur la feuille "maître" en colonnes E à I; J'ai ajouté pour cela à la fin du tableau un repère indiquant le n° de ligne concerné

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
    If Sh.Name = "Transmissions téléphoniques" Then Exit Sub
    If Intersect(Target, Sh.Columns("D:H")) Is Nothing Then Exit Sub
    With Sheets("Transmissions téléphoniques")
        For Each cel In Intersect(Target, Sh.Columns("D:H"))
            If Cells(cel.Row, "I") <> "" And cel.Row > 4 Then
                .Cells(Cells(cel.Row, "I"), cel.Column + 1).Value = cel.Value
            End If
        Next
    End With
End Sub

Dis mois si j'ai bien compris ton besoin.

C'est juste parfait !

Merci beaucoup !!!

Des bises ! <3

Rechercher des sujets similaires à "contient mot copier ligne feuille"