Supprimer cellule sur un autre onglet par rapport a une autre

Bonjour,

J'ai un tableau Excel regroupant sur trois onglets le code barre des manuels scolaires des élèves du lycée où je travaille. J'ai créer un autre onglet pour pouvoir afficher les informations des élèves par rapport au code barre scanner d'un livre lors de sa restitution. J'aimerais maintenant créer une macro et l'appliquer sur un bouton pour que celui-ci supprime la cellule qui correspond au code barre scanner dans l'onglet où celle-ci se situe.

Exemple : J'ai quatre onglets : Recherche, Seconde, Première et Terminale. J'ai un élève A de Terminale qui me rend son livre, je scan dans l'onglet Recherche le code barre (sa valeur est 123456). J'ai donc les informations concernant l'élève (son nom, sa section et sa classe). J'aimerais en appuyant sur le bouton "Retirer de la liste", que la valeur de la case sur l'onglet "Terminale" qui correspond au code barre 123456, soit supprimée. Je vous joins une photo de l'excel, et si il faut, j'enverrai l'excel sans les données privées. Je ne sais pas si une solution sans macros existe.

test livre

Merci pour votre aide.

Bonjour David et bienvenu, bonjour le forum,

je n'ai même pas lu ton problème jusqu'à la fin... je ne comprends pas l'envoie de capture d'écran au lieu du fichier Excel. Comment veux-tu que l'on puisse tester !?...

L'excuse, souvent donnée, des données confidentielles ne tient pas. Rien ne t'empêche de créer un fichier avec des données bidons...

Bonjour,

Oui c'est vrai, c'est plus simple. Voici donc un Excel simplifié avec toutes les données nécessaires.

Re,

Si j'ai bien compris. dans le fichier joint j'ai :

code du livre = 15 et les autres données...
si je clique sur le bouton Retirer de la liste, j'efface la cellule A7 de l'onglet PREMIERE. C'est ça ?

Sub Macro1()
Dim RC As Worksheet 'déclare la variable RC (Onglet ReCherche)
Dim OD As Worksheet 'déclare la variable OD (Onglet Destination)
Dim NUM As String 'déclare la variable NUM (NUMéro)
Dim R As Range 'déclare la variable R (Recherche)
Dim LI As Integer 'déclare la variable LI (LIgne)

Set RC = Worksheets("RECHERCHE") 'définit l'onglet RC
NUM = CStr(RC.Range("F6:I6")(1, 1).Value) 'définit le numéro NUM
Set OD = Worksheets(RC.Range("G13:H15")(1, 1).Value) 'définit l'onglet de destination OD
Set R = OD.Columns(1).Find(NUM, , xlValues, xlWhole) 'définit la recherhe R (recherche le numéro dans la colonne 1 de l'onglet de destination
If Not R Is Nothing Then 'condition : si au moins une occurrence est trouvée
    LI = R.Row 'définit la ligne LI (ligne de la première occurrence trouvée)
    OD.Cells(LI, 1).Delete 'efface la cellule ligne LI colonne 1 de l'onglet OD
End If 'fin de la condition
End Sub

Oui c'est ça !

Je viens d'affecter votre macro a mon bouton, mais quand je clique dessus, le numéro "15" dans la feuille "Première" se supprime bien, mais au lieu de laissé la cellule A7 vide, tout les numéro sous le "15" sont montés d'un cran. Il n'est pas possible de juste laisse la cellule A7 vide ? Tout en gardant le numéro "25" en face du nom "Y".

Re,

Oui pardon, c'est ma faute...remplace la ligne :

 OD.Cells(LI, 1).Delete 'efface la cellule ligne LI colonne 1 de l'onglet OD

par :

 OD.Cells(LI, 1).ClearContents 'efface la cellule ligne LI colonne 1 de l'onglet OD

J'ai remplacé et ça fonctionne nickel ! Merci beaucoup pour l'aide !

Re Bonjour,

Je viens de l'essayer sur mon tableau sur Excel 2007, j'ai un message d'erreur, je n'arrive pas a régler le soucis..

image

Quelle est la solution ?

Merci d'avance

Re,

Peut-être comme ça : Supprime le bouton Retirer de la liste. Tu le recrés et lui affectes la même macro...

Rechercher des sujets similaires à "supprimer onglet rapport"