Pouvez vous corriger ma ligne svp ?

  • Initiateur de la discussion Initiateur de la discussion lcoulon
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

lcoulon

XLDnaute Occasionnel
Bonjour

Je cherche a réaliser une macro qui verifierai si des cellules ont un contenu dans une plage donnée ( C2:C1000)

si en C une donnée est présente , alors rien ne n'est fait en cellule A de la ligne scrutée.

si par contre la cellule C est vide, alors je voudrais que le contenu de la cellule A de la même ligne soit effacé .

voici ce que j'ai commencé d'écrire ...

Code:
Set Plage = Sheets("feuill1").Range("C2:C1000")
For Each Cell In Plage

If Cell.Value = "" Then
Sheets("feuill1").Range("A") = ""   '.Cells.Clear

End If

Next Cell

J'obtiens une erreur et je ne sais pas la corriger ...
Merci de votre aide,
 
Re : Pouvez vous corriger ma ligne svp ?

Bonjour,
tu es sûr du nom de ta feuille 1? :

Code:
Sheets("feuill1")

ce ne serait pas plutôt :

Code:
Sheets("feuil1")

avec un "l"

autre manière, sans boucle :

Code:
Columns("C:C").SpecialCells(xlCellTypeBlanks).Offset(0, -2).Value = ""

Edit : bien vu Robert, j'avais point vu le Range("A")
 
Dernière édition:
Re : Pouvez vous corriger ma ligne svp ?

bonjour, essai ceci
j'ai mis Sheets("Feuil1") toi tu mets "Feuill1" avec (2 L) A VOIR ?
Code:
Sub Essai()
Dim Cell As Range
Set Plage = Sheets("feuil1").Range("C2:C1000")
For Each Cell In Plage
 If Cell.Value = "" Then Sheets("feuil1").Range("A" & Cell.Row) = ""   '.Cells.Clear
Next Cell
End Sub

Roland
 
Dernière édition:
Re : Pouvez vous corriger ma ligne svp ?

Si je veux maintenant que la cellule C contienne un début de donnée spécifique, comment procédez vous ?

du genre : si la cellule C contient un texte commencant par "ABC" alors modifie cellule en A

il s'agit juste de verifier si le début du texte correspond, pas toute son intégralité ...
 
Re : Pouvez vous corriger ma ligne svp ?

Re-,
pour effectivement changer les 3 premières lettres de la colonne A :

Code:
Set Plage = Sheets("Feuil1").Range("C2:C1000")
For Each cel In Plage
 If Left(cel.Value, 3) = "ABC" Then Cells(cel.Row, 1).Value = "BBC" & Right(Cells(cel.Row, 1).Value, Len(Cells(cel.Row, 1)) - 3)
Next cel
 
Re : Pouvez vous corriger ma ligne svp ?

et question bête, mais si on veut remplacer tous les début de cellules commencant par ABC dans toute une colonne et les remplacer par ZZZ

est ce le meme principe, on joue sur le chiffre de ( cel.Row, x ) pour la cellule de destination ?
 
Re : Pouvez vous corriger ma ligne svp ?

Re-,
le Len sert à comptabiliser le nombre de caractères dans la cellule
ex : "petit"
- 3 pour signifier qu'on garde tous les caractères moins 3
donc Right.... donne "it"
Pour remplacer Tous les ABC, soit la méthode Replace, sans cocher la totalité de la formule (fais des essais en enregistrant via l'enregistreur de macro), soit par ce code, mais sans conditions IF.....
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour