Limiter election à un seul tableau

Bonjour au Forum,

J'ai crée une macro permettant de créer un lien hypertext vers un fichier pour chaque ligne d'un tableau.

Pour une question de besoin d'information, j'ai du créer un second tableau en dessous du premier mais je veux que la macro crée le lien hypertext uniquement sur le premier tableau.

Actuellement la macro crée un lien pour chaque ligne, ce qui évidement ne colle pas dans les cases vides et celles où il n'est pas question d'un nom de fichier.

Quelqu'un connait-il le code pour créer les liens uniquement dans le 1er tableau?

(Le nombre de ligne de ce 1er tableau, 6 dans l'exemple, est variable)

Ci joint l'excel avec les tableaux et la macro

18lien-archivage.xlsm (25.25 Ko)

Merci par avance

Bonjour,

Ton fichier en retour.

Cdlt.

10lien-archivage.xlsm (43.88 Ko)
screen

@Seb276 : c'est pour l'élection du tableau « Miss France » ?

(faut voter pour l'élection du plus beau tableau Excel)

dhany

Bonjour,

Avoir la dernière ligne d'un tableau en partant du bas j'adore le faire, je le mets dans plein de programmes, mais ça ne marche pas vraiment comme on veut quand on met deux tableaux dans la colonne où on veut la ligne.

Du coup je suis plutôt partis de ta cellule a4 vers le bas pour prendre la dernière ligne de ton premier tableau, une fois que tu fais ça, tout est reglé

For Each cel In Range("A4", Range("A4").End(xlDown))

Le fichier corrigé:

Bonjour,

Vu que tu as un vrai tableau la plage que tu veux sélectionner est déjà nommée automatiquement sur excel.

Reste juste à l'appeler.

Je ne me suis pas penché sur le coeur de ton code mais juste sur 3 lignes :

Sub Creation_lien_archivage()

    'Selection de la colonne des N° de plan
    Range("Tableau247[N° de plan]").Select 'Ligne corigé

    'remplacement du slach "/" par un tiret "-"
    Application.WindowState = xlMaximized
    Selection.Replace What:="/", Replacement:="-", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False

    'création du lien pour chaque ligne
    For Each cel In Range("Tableau247[N° de plan]") 'Ligne corigé
        If cel Like "A*" Then 'si le nom de la cellule commence par A
         cel.Hyperlinks.Add Anchor:=cel.Offset(0, 0), Address:= _
            "G:\Archivage\Petro Assem\" & cel.Value & ".tif", TextToDisplay:=cel.Value
        Else
         cel.Hyperlinks.Add Anchor:=cel.Offset(0, 0), Address:= _
            "G:\Archivage\Petro Moules\" & cel.Value & ".tif", TextToDisplay:=CStr(cel.Value)
        End If

    Next

    'modification de la police du lien hypertext
            For Each cel In Range("Tableau247[N° de plan]") 'Ligne corigé
        cel.Offset(0, 1).Select
        If Selection.Font.ColorIndex <> 15 Then
            cel.Font.Bold = True
            cel.Font.ColorIndex = 1
            Else
            cel.Font.ColorIndex = 15
            cel.Font.Underline = xlUnderlineStyleNone
        End If
            Next
End Sub

En espérant avoir solutionné ton problème ^^

Bonjour,

Ton fichier en retour.

Cdlt.

Lien archivage.xlsm

Merci Jean-Eric, ce la fonctionne

Screen.jpg

@Seb276 : c'est pour l'élection du tableau « Miss France » ?

(faut voter pour l'élection du plus beau tableau Excel)

dhany

Oui je m'en suis rendu compte après....

OK merci à tous pour vos réponses,

Elles fonctionnent toutes ,

je n'ai plus qu'à choisir laquelle je préfère

Rechercher des sujets similaires à "limiter election seul tableau"