titamy
Messages postés9Date d'inscriptionmercredi 18 novembre 2009StatutMembreDernière intervention21 février 2012
-
14 févr. 2012 à 15:45
LIBRE_MAX
Messages postés1402Date d'inscriptionmardi 1 mai 2007StatutMembreDernière intervention 7 octobre 2012
-
14 févr. 2012 à 23:24
Bonjour,
J'ai créer un petit programme qui teste les valeurs de cellules de la colonne A. Pour cela je compare la valeur à celle de la cellule qui la suit. Si les deux valeurs sont identiques alors il faut effacer la 1ere valeur t continuer le test.
Je devrais le faire ensuite pour les autres colonnes de ma feuille de données.
Pouvez-vous m'expliquer pourquoi cela ne marche pas ?
Je vous remercie d'avance pour votre aide
Sub misepage1()
Dim Reponse As Integer
Dim Rw As Range
Dim Ligne As Long
Dim i, j
MsgBox "Tri des données" '
Sheets("ST-Brevin").Select
ActiveCell.SpecialCells(xlLastCell).Select
Range(Selection, Cells(1)).Select
For Each Rw In Selection.Rows
Ligne = Rw.Row
i = 1
j = i + 1
If Rw.Cells(1, i).Value = Rw.Cells(1, j).Value Then
Rw.Cells(1, i).Value = " "
End If
i = i + 1
Next Rw
MsgBox "Fin" End Sub
A voir également:
Besoin d'aide Visual basic : Pourquoi ça ne fonctionne pas ?
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018219 14 févr. 2012 à 17:06
ceci, par exemple, fera ce que tu veux, dans la colonne A de la feuille nommée "Feuil3" , de la première ligne à la dernière :
Dim derlig As Long, i As Long
With Sheets("Feuil3")
derlig = .Range("A" & Rows.Count).End(xlUp).Row
For i = 1 To derlig - 1
If .Range("A" & i).Value = .Range("A" & i + 1).Value Then
.Range("A" & i).Value = ""
End If
Next
End With
Il n'y a dans ce code, comme tu peux le voir, aucun "select"
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018219 14 févr. 2012 à 16:31
Bonjour,
Avant toute autres choses :
1) tu as ouvert ta discussion dans la section non appropriée de ce forum. Tu aurais du l'ouvrir dans la section "Langages dérivés > VBA"
Un administrateur déplacera la présente discussion, mais veille à observer dorénavant cette discipline.
2) pense également à utiliser les balises code de ce forum (en encadrer tes bouts de code). Ce n'est pas un luxe non plus
Tes approches à coups de "select" à tout va sont à proscrire.
Veux-tu bien nous dire quelle plage (d'où à où) tu veux traiter (cela se dit en très peu de mots).
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient