Macro liens hypertexte

ciosi68 Messages postés 7 Statut Membre -  
jjsteing Messages postés 1613 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,j'ai crée une macro qui a pour fonction d'attribué un lien hypertexte à un ensemble de cellules fusionné a un fichier word
(en fait ,ce sont les récapitulatifs d'une journée à chaque fois) de la manière suivante:

Range("GE2:GJ2").Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:= _
"journal des journées\21-07-2009.doc"

Range("GK2:GP2").Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:= _
"journal des journées\22-07-2009.doc"

etc...

Serait il possible d'affectuer une macro qui genererait automatiquement pour chaque cellule fusionner un lien hypertexte qui se suit ? Car tout recopier à chaque fois,c'est plus rapide qu'en passant à chaque fois par les liens
mais c'est assez fastidieux quand meme
Merci d'avance
Configuration: Windows XP
Firefox 3.5.1

11 réponses

  1. jjsteing Messages postés 1613 Date d'inscription   Statut Contributeur Dernière intervention   181
     
    Bonjour, donc tu voudrais que toutes les 6 colonnes de la ligne 2 se créé un lien hypertexte c'est ca?

    Et l'adresse du lien.. c'est toujours :

    "journal des journées\22-07-2009.doc" puis
    "journal des journées\21-07-2009.doc" (j-1)
    "journal des journées\20-07-2009.doc" (j-2)

    ect ?
    0
  2. ciosi68 Messages postés 7 Statut Membre
     
    Oui c'est à peu près ca
    Ce groupe de cellule,je dois a chaque fois indiquer à la macro ou il se trouve
    et modifier le nom du document word ou se fait le lien hypertexte
    Après,je compte faire un fichier pour toute l'année
    ex:sur le doc.excel,j'ai un ensemble de cellule fusionner de 6 cellules qui porte le nom:1-01-2010
    Il faudrait qu'il m'associe un lien hypertexte nommer 1-01-2010 dans word etc....
    Et ce du 1er janvier au 31 décembre
    0
  3. jjsteing Messages postés 1613 Date d'inscription   Statut Contributeur Dernière intervention   181
     
    chaque chose en son temps ;)
    encore 2 ptites question.. est ce que tu sais où doit commencer ta macro.. et où elle doit se terminer

    je vois que tu est en Range("GK2:GP2").. ce qui me fait dire que ton tableau est assez enorme ... :s
    0
  4. ciosi68 Messages postés 7 Statut Membre
     
    Oui,elle doit commencer le 30 juillet et se terminer le 24 décembre
    J'aimerais aussi créer une sauvegarde du fichier avec une macro qui permettrait d'aller du 1 er janvier au 31 décembre (365 liens hypertextes à faire)
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. jjsteing Messages postés 1613 Date d'inscription   Statut Contributeur Dernière intervention   181
     
    donc je suppose que la date est en ligne 1...

    derniere question.. veux tu qu'il commence au 1er lundi du mois d'aout, ou tu t'en moque? pareil pour le 24 decembre??
    0
  7. ciosi68 Messages postés 7 Statut Membre
     
    La date est en ligne 2

    Si cela commence le 1 er lundi du mois d'aout,je ferais avec,je ferais des copier coller
    de ma macro de départ et je modifierai à chaque fois l'ensemble de cellule et la date du lien
    en attendant
    0
  8. jjsteing Messages postés 1613 Date d'inscription   Statut Contributeur Dernière intervention   181
     
    non, non, en fait, ma question était dois tu te basé sur une semaine calendaire (du lundi au dimanche par ex) ou sur une semaine de 7 jours, quelque soit le jour du début ...

    Bon, et j'ai tout relu.. en fait tu as 6 colonnes avec le meme jour puis 6 colonnes suivantes avec le jour suivant..ect..

    voici le code

    Rows(1).Hyperlinks.Delete 'enleve les hyperlinks actuels
    Rows(1).NumberFormat = "dd-mm-yyyy" 'remet le format de date
    'Range("A1:A10").Format "dd-mm-yyyy"
    colonne = 1 'numero de la colonne où l on commence
    While Cells(1, colonne) <> "" 'tant qu il arrive pas au bout
    Range(Cells(1, colonne), Cells(1, colonne + 5)).Select 'selectionne les 6 colonnes
    datealier = Format(Cells(1, colonne).Value, "dd-mm-yyyy") ' met en forme la date qui va etre ecrite
    ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:= _
    "journal des journées\" & datealier & ".doc" 'ajoute le lien
    colonne = colonne + 6 'avance de 6 colonnes
    Wend 'retour au debut de la boucle
    0
  9. ciosi68 Messages postés 7 Statut Membre
     
    OK merci beaucoup,mais en executant la macro
    ub Macro1()
    '
    ' Macro1 Macro
    ' Macro enregistrée le 29/07/2009 par aaaaaaa
    'Rows(1).Hyperlinks.Delete
    Rows(1).NumberFormat = "dd-mm-yyyy"
    'Range("A1:A10").Format "dd-mm-yyyy"
    colonne = 1
    While Cells(1, colonne) <> ""
    Range(Cells(1, colonne), Cells(1, colonne + 5)).Select
    datealier = Format(Cells(1, colonne).Value, "dd-mm-yyyy") '
    ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:= _
    "journal des journées\" & datealier & ".doc"
    colonne = colonne + 6 '
    Wend

    '
    Application.Run "PERSO.XLS!Macro1"
    Range("GL17").Select
    End Sub
    Il me met erreur d'application 28
    Espace pile insuffisant?
    0
  10. jjsteing Messages postés 1613 Date d'inscription   Statut Contributeur Dernière intervention   181
     
    ben oui.. c'est sur...

    tu as rajouter ca à la fin de Macro1:

    Application.Run "PERSO.XLS!Macro1"

    donc macro1 lance macro1.. ect.. donc il boucle !!
    0
  11. ciosi68 Messages postés 7 Statut Membre
     
    Ok,je suis désolé,j"ai effacé cette partie
    C'est logique mais bon je suis à ma première macro

    Cette macro marche pour n'importe quel date?
    0
  12. jjsteing Messages postés 1613 Date d'inscription   Statut Contributeur Dernière intervention   181
     
    ben oui, il me semble ;)
    0