Suppression de contenus d'un cellule

bonsoir

mon probleme n'est pas simple , j'ai une sur feuille de calcul donnée une cellule contenant deux mots ; par exemple " albert dupont "

en A1 et je souhaiterai supprimer le contenu de cette cellule si dans C3 j'ai albert ou dupont , comment ecrire une telle instruction

si cela reste possible ?

Merci pour vos conseils

Bonjour,

Une solution utilisant la fonction Split pour séparer les mots contenus dans A1 afin de les comparer avec ceux de C3.

A+

19classeur2.xlsm (15.70 Ko)

!!! Merci frangy mais comme j'ai excel 2003 je n'ai pas pu ouvrir ton fichier


Pourrais tu me donner simplement les lignes de codes ? en te remerciant par avance

Bonjour tout le monde,

Le code de Frangy est très intéressant

A la demande de Rocket, le voici "sorti de son fichier" :

Option Explicit
Sub Supprimer()
Dim Tablo
Dim i As Byte
    With Worksheets("Feuil1")
        Tablo = Split(.Range("A1").Value, " ")
        For i = 0 To UBound(Tablo)
            If InStr(Trim(.Range("C3").Value), Trim(Tablo(i))) > 0 Then .Range("A1").ClearContents
        Next i
    End With
End Sub

Merci Yvouille et Frangy , je viens de le tester , c'est formidable !

m'inspirant de votre exemple j'ai essayé de l'adapter comme suit , j'ai deux classeur A et B , je suis sur ma feuille active dans B

et souhaite en comparant une cellule h5 de cette meme feuille à une plage c15:c38 de mon classeur A feuille 1 ,d'identifier une cellule identique à h5 et d'effacer son contenu dans le classeur A , feuille 1 , mais le fait d'utiliser la variable xcell , cela ne marche pas

dim i as byte
dim xcell as range 

Workbooks("classeur A.xls").activate
Sheets("Feuil1").select

tablo = Split(xcell.Value, " ")
     For i = 0 To UBound(tablo)

    For Each xcell In Workbooks("classeur A.xls").Sheets("Feuil1").Range("C15:c38")
        If InStr(Trim(Workbooks("Classeur B.xls").ActiveSheet.Range("h5").Value), Trim(tablo(i))) > 0 Then xcell.ClearContents

        Next xcell
        Next i

comment pourrais je corriger ces lignes ? merci

Si j’interprète bien ta demande, cela n’a rien à voir avec ce que tu demandais précédemment.

Tu recherches dans la plage C15:C38 de la feuille1 du classeur A une cellule ayant un contenu identique à celui de la cellule H5 de la feuille active du classeur B.

Une simple recherche avec Find devrait suffire.

Sub Recherche()
Dim WsC As Worksheet
Dim C As Range
    Set WsC = Workbooks("classeur A.xls").Sheets("Feuil1")
    With ThisWorkbook.ActiveSheet
        Set C = WsC.Range("C15:C38").Find(.Range("H5").Value, LookIn:=xlValues, lookat:=xlPart)
        If Not C Is Nothing Then C.ClearContents
    End With
End Sub

A+

je te remercie infiniment Frangy , je n'aurai pas fait mieux !

Rechercher des sujets similaires à "suppression contenus"