Trouver une cellule en fonction de sa ligne et du titre de sa colonne

Bonjour,

Je suis débutant en VBA et tous mon code vient des tuto Youtube/Web et du générateur excel mais la je suis bloqué...

Pour résumer, j'ai des tableaux que je dois rentrer dans un formulaire intranet, les tableaux ne sont pas toujours dans le même ordre et n'ont pas toujours le même nombre de ligne et colonne.

J'ai automatiser le "Login" et Navigation vers le bon formulaire mais la je suis bloqué.

Mes tableaux commencent toujours ligne 15 et j'ai donné un nom à chaque colonne (après n'avoir garder que le premier mot) avec le code suivant :

    Range("A15:A25").Select
    ActiveWorkbook.Names.Add Name:=Range("A15").Value, RefersToR1C1:= _
        "='Liste candidats'!R15C1:R25C1"

Ensuite je sélectionne mon tableau :

    Dim rng1 As Range                                                                                               
    Dim rng2 As Range
    Dim rng3 As Range
    Dim Myrange As Range

        Set rng1 = Cells.Find("*", [a1], xlFormulas, , xlByRows, xlPrevious)
        Set rng2 = Cells.Find("*", [a1], xlFormulas, , xlByColumns, xlPrevious)

            If Not rng1 Is Nothing Then
                Set rng3 = Range([a16], Cells(rng1.Row, rng2.Column))

                Application.Goto rng3

            End If

        Set Myrange = Selection

Et là j'aimerai remplir mon formulaire pour chacun de mes candidat (candidat = ligne)

For Each row in Myrange.row
   For Each cell in row.cell
          If Columm.cell=NOM Then
                    Select
                    idoc.all.P2300.Value = Selection.Value
          End IF
   Next Cell

   For Each cell in row.cell
          If Columm.cell=PRÉNOM Then
                    Select
                    idoc.all.P2300.Value = Selection.Value
          End IF
   Next Cell

   'Appuyer sur le bouton Candidat suivant et recommencer

            For Each Link In ElementCol                                                   
            If Link.getAttribute("alt") = "Candidat suivant" Then                              
            Link.Click
                Exit For
            End If
            Next Link

Next row

Jusqu'à maintenant j'ai tout réussi par moi même mais la je ne trouve aucun exemple pour trouver une cellule dans ma sélection avec le nom (titre) d'une colonne allant de la ligne 15 a 25.

Merci d'avance a celui qui trouvera une solution.

Bonjour,

Vous devriez mettre votre tableau sous forme de tableau structuré. Ensuite dans le code :

range("NOMTABLEAU[Candidat]")(i)

correspondra à la cellule en ligne i de la colonne Candidat du tableau NOMTABLEAU.

Il est possible d'utiliser INDEX, EQUIV et toutes les fonctions de la feuille dans le code :

ligne = application.match(vcherchee, range("NOMTABLEAU[COLONNERECHERCHE]"), 0) 'equiv
valeur_renvoyee = application.index(Range("NOMTABLEAU[COLONNERETOURNE]"), ligne) 'index

Cdlt,

Un grand merci.
C'est exactement ce que je cherchai !

Rechercher des sujets similaires à "trouver fonction ligne titre colonne"