Rechercher remplacer en VBA [Résolu]

Messages postés
2
Date d'inscription
jeudi 12 octobre 2006
Statut
Membre
Dernière intervention
12 octobre 2006
- - Dernière réponse : cs_Kaltar
Messages postés
2
Date d'inscription
jeudi 12 octobre 2006
Statut
Membre
Dernière intervention
12 octobre 2006
- 12 oct. 2006 à 15:46
voila mon petit problemes : 
je suis dans excel : en colone C j'ai une liste de nom et en colone D des numeros

En gros je veut que lorsque dans la colone D apparait "Total" cela soit remplacer par "Lien + le contenue de la cellule C dans la même ligne"

Si quelqu'un a une solution elle sera plue que bienvenue
Afficher la suite 

3 réponses

Meilleure réponse
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
16
3
Merci
Salut,
essaie ceci :

Public Function PremiereLigneVide(Colonne As Integer) As Long 
    PremiereLigneVide =  Columns(Colonne).Find("", , , , xlByRows, xlNext).Row 
End Function 

Sub MyProc()
    Dim DerLigne As Long
    Dim i        As Long

  DerLigne = PremiereLigneVide(4) - 1

  For i = 1 To DerLigne
    If Cells(i, 4).Value = "Total" Then
        Cells(i, 4).Value = "Lien " & Cells(i, 3).Value
    End If
  Next i
End Sub

<small>Coloration syntaxique automatique [mortalino] </small>
       
@++

<hr width ="100%" size="2" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
/DIV>

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 136 internautes nous ont dit merci ce mois-ci

Commenter la réponse de mortalino
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
46
0
Merci
Salut,
Tiens essaie ceci,

Meme si je suis persuadé qu il y a plus rapide et mieux ecrit
    Dim UnCell As Range 
   'Selectionne la colonnes D
   'de la feuille active du classeur actif
    ActiveWorkbook.ActiveSheet.Columns("D:D").Select 
    For Each UnCell In Selection 
       'On sort de la boucle des que
       'l'on trouve une cellule vide
        If UnCell.Text = "" Then Exit For 

        If UnCell.Text = "Total" Then 
            UnCell.Text = "Lien " & ActiveWorkbook.ActiveSheet.Range("C" & UnCell.Row) 
        End If 
    Next 

 

<small> Coloration syntaxique automatique [AFCK]</small>
       

@+,   Ju£i?n
Commenter la réponse de jrivet
Messages postés
2
Date d'inscription
jeudi 12 octobre 2006
Statut
Membre
Dernière intervention
12 octobre 2006
0
Merci
le premier code marche pas, mais j'ai pas vraiment fouillé pourquoi, par contre le second c'est une merveille

Merci beaucoup du coup de main
Commenter la réponse de cs_Kaltar