[Excel] Lien hypertexte renvoyant à une date

Maxou_584 -  
lermite222 Messages postés 9042 Statut Contributeur -
Bonjour,

J'ai un fichier excel avec un grand nombre de lignes, avec en début de ligne la date correspondant à l'opération de la ligne. Je veux donc créer en haut de page un lien pour chaque mois de l'année, mais je ne peux pas savoir à l'avance à quelle ligne sera telle ou telle date puisque le tableau est fréquemment mis à jour.

Donc j'aimerais que par exemple le lien janvier 08 me renvoie à la première date en janvier 2008 qu'il trouve dans la colonne des dates. Je ne sais pas si c'est réalisable et encore moins si ce que je viens d'écrire est compréhensible ...

Merci
Configuration: Windows XP
Internet Explorer 6.0
Suite Office 2003

1 réponse

  1. lermite222 Messages postés 9042 Statut Contributeur 1 199
     
    Bonjour,
    Avec un HyperText c'est pas faisable mais peut être fait par d'autre moyens.
    Ligne avec date ? Il n'y à qu'une seule ligne avec cette date ?

    Une macro qui peu faire ça, faut adapter les adresses bien sûr.
    Taper le N° du mois dans cellule A1 et l'année dans C1
    Taper Alt+F11 double clic sur la feuille à traiter et copier la macro ci-dessous.

    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Static AncAdress As String, AncCell As Variant
        If Target.Count > 1 Then Exit Sub
        If AncAdress <> "" Then 'pour 1ère initialisation.
            If AncAdress = "$A$1" Then
                If AncCell <> Range(AncAdress) Then
                    'La cellule que l'ont vient de quitter a été modifiée.
                    'Mettre l'action à exécuter.
                    For i = 6 To Range("A65536").End(xlUp).Row
                        If Month(Cells(i, 1)) = Cells(1, 1) And _
                         Year(Cells(i, 1)) = Cells(1, 3) Then
                         Cells(i, 1).Select
                         Exit For
                        End If
                    Next i
                End If
            End If
        End If
        AncAdress = Target.Address
        AncCell = Target.Value2
    End Sub


    A+
    0