Cell (???,1)

Bonsoir à tous et tous mes vœux

voila une ligne de code qui me pose un soucis

.Interior.Color = sheets("Taureaux").Cells(5, 1).Interior.Color

cette ligne fonctionne tres bien mais lorsque le fichier sera complet j aurais + de 50 noms differents et je n ai pas envie d'avoir , à chaque création de fiche, de modifier le code et rechercher le numéro de ligne

en gros j aimerais un truc du genre EQUIV

11genebo20.xlsm (27.84 Ko)

Bonjour,

dernière ligne utilisée :

sheets("Taureaux").Cells(rows.count, 1).end(xlup)

eric

Edit : à la réflexion et après avoir ouvert ton fichier, je crois que tu veux plutôt :

    Dim nom As String, c As Range
    nom = "Vaudiau" ' respecter majuscules/minuscules
    With sheets("Taureaux")
        Set c = .Columns(1).Find(nom, , xlValues, xlWhole)
        If c Is Nothing Then
            MsgBox nom & " non trouvé"
        Else
            MsgBox nom & " en ligne " & c.Row
        End If
    End With

eric

bonjour eric

MERCI pour ton aide !

en trafiquant mon code avec l element :" .Columns(1).Find( " à la place de "cells()" j obtiens exactement ce que je recherchais : copier la couleur de fond !

je joint le fichier modifié pour que tu voit ce que j ai écris et voir si il y a une manière plus simple d'écrire tout ça ! c est ma première "VBA" que je rédige seul (presque 10 jours que je l ai commencer , mais avec quand meme pas mal de recherches sur internet lol)

il faut maintenant que je trouve comment faire pour que le code s'actualise automatiquement en cas de modifications (nom de feuille ou modif de la couleur de fond) sans avoir à relancer à chaque fois le code "manuellement"

Merci merci merci

4genebo20.xlsm (28.23 Ko)

Bonjour,

pas le temps de regarder ton code, je dois partir.

Juste pour dire qu'il n'y a pas d'événement déclencheur sur un changement de couleur.

Soit tu restes manuel, soit tu en utilises un autre comme activation de la feuille ou selection_change (plus gourmand surtout si tu dois contrôler de nombreuses cellules).

eric

merci de ton aide je clos le sujet mon probleme actuel etant resolu ! je reviendrais sans doute bientôt pour d auters soucis lol !

J'ai voulu jeter un oeil mais pas vu de .find()

.Interior.Color = sheets("Taureaux").Columns(1).Find(nomtau, , xlValues, xlWhole).Interior.Color

cette ligne est dans la feuil1(Vaudiau) quand on ouvre le vba

Attention que .find génère une erreur si non trouvé.

Il faut que tu sois sûr à 120% qu'il sera présent si tu veux te passer du test is nothing

eric

oui oui sure qu il sera (seront) dans le fichier final j ai suffisament de mon troupeau à m ' occuper pas besoin de ceux du voisin lol