Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 5 sur 5

Discussion: Liaison mise à jour

  1. #1
    Membre confirmé Avatar de CODYCO
    Homme Profil pro
    Webplanneur
    Inscrit en
    avril 2009
    Messages
    201
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Webplanneur
    Secteur : Bâtiment

    Informations forums :
    Inscription : avril 2009
    Messages : 201
    Points : 204
    Points
    204

    Par défaut Liaison mise à jour

    Bonjour à tous et une bonne année 2013.

    Je relance un vieux sujet que j'avais déjà évoquer en 2012 mais sans vraiment avoir trouver de soluce, donc au cas ou certain peuvent m'aider
    on ne sait jamais.

    En essayer de faire claire notre parck info était en office 2003, sur des fichiers word nous avons un grand nombre de liaison avec excel (collage avec liaison), jusque la pas de problème, parfois il arrivait que des liaisons ce casse, bref, j'avais une petite macro qui me réparer les liasions, cool.

    Sauf que voila maintenant notre parck info est en office 2010, et la patatra,
    j'ai bien essayer d'adapter la macro mais rien ne va plus, je continu à récupérer et réparer mes liaisons sur des tableaux excel, mais cela ne marche pas sur les graphiques...help

    Je joins le code...

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
     
    Sub MAJ_Liaison()
    Dim alink As Field, linktype As Range, linkfile As Range
    Dim linklocation As Range, i As Integer, j As Integer, linkcode As Range
    Dim Message, Title, Default, Newfile
    Dim counter As Integer
     
    'Nom1 = Application.ActiveDocument.Name
    'Nom1 = Mid(Nom1, 1, 4)
     
    'Crée une fenetre d'acces vers fichier excel pour définir le fichier
    Set objExcel = CreateObject("Excel.Application")
    objExcel.Visible = False
     
    'Définie la boite de dialogue excel ouvrir
    Set objExcel = Application.FileDialog(msoFileDialogFilePicker)
    With objExcel
     
    If .Show = -1 Then
                For Each Source In .SelectedItems
                    chemin = Source
                    Temp = Replace(chemin, "\", "\\")
                    chemin = Replace(Temp, "W:", "\\\\Sntp0350\\Travail")
                    If chemin Like "*2011*" Then
                      Nom1 = "2011"
                    ElseIf chemin Like "*2012*" Then
                      Nom1 = "2012"
                    End If
                    'chemin = "\\\\Sntp0350\\Travail" & Temp
                Next Source
    End If
    End With
    'Décompose et recompse le lien des liaisons
    counter = 0
    For Each alink In ActiveDocument.Fields
    If alink.Type = wdFieldLink Then
     
    Set linkcode = alink.Code
    i = InStr(linkcode, Chr(34))
    Set linktype = alink.Code
    linktype.End = linktype.Start + i
    j = InStr(Mid(linkcode, i + 1), Chr(34))
    Set linklocation = alink.Code
    linklocation.Start = linklocation.Start + i + j - 1
     
    If linklocation Like "*2011*" Then
    Nom2 = "2011"
    ElseIf linklocation Like "*2012*" Then
    Nom2 = "2012"
    End If
    linklocation = Replace(linklocation, Nom2, Nom1)
    If counter = 0 Then
    Set linkfile = alink.Code
    linkfile.End = linkfile.Start + i + j - 1
    linkfile.Start = linkfile.Start + i
    Message = "Veuillez confirmer le nouveau chemin pour les liaisons "
    Format " & linkfile "
    Title = "Update Lien"
    Default = chemin
    Newfile = InputBox(Message, Title, Default)
    End If
     
     
    linkcode.Text = linktype & Newfile & linklocation
    counter = counter + 1
    End If
    Next alink
    End Sub
    Webplanneur comme disait Plastik...

    Si la réponse répond à votre besoin, votre vote nous encouragera.
    Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.

  2. #2
    Rédacteur/Modérateur


    Avatar de Heureux-oli
    Homme Profil pro Olivier Lebeau
    Contrôleur d'industrie
    Inscrit en
    février 2006
    Messages
    19 752
    Détails du profil
    Informations personnelles :
    Nom : Homme Olivier Lebeau
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : février 2006
    Messages : 19 752
    Points : 36 316
    Points
    36 316

    Par défaut

    Salut,

    Pourquoi utilser des Range pour le contenu des champs ?
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  3. #3
    Membre confirmé Avatar de CODYCO
    Homme Profil pro
    Webplanneur
    Inscrit en
    avril 2009
    Messages
    201
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Webplanneur
    Secteur : Bâtiment

    Informations forums :
    Inscription : avril 2009
    Messages : 201
    Points : 204
    Points
    204

    Par défaut

    Que me proposes tu ? crois tu vraiment que le problème peux venir de là?
    Webplanneur comme disait Plastik...

    Si la réponse répond à votre besoin, votre vote nous encouragera.
    Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.

  4. #4
    Rédacteur/Modérateur


    Avatar de Heureux-oli
    Homme Profil pro Olivier Lebeau
    Contrôleur d'industrie
    Inscrit en
    février 2006
    Messages
    19 752
    Détails du profil
    Informations personnelles :
    Nom : Homme Olivier Lebeau
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : février 2006
    Messages : 19 752
    Points : 36 316
    Points
    36 316

    Par défaut

    Salut,

    J'en ai aucune idée.
    Tu n'as pas de message d'erreur ?

    Perso, je n'ai pas ce problème de liens brisés et je n'ai pas testé ton code.

    Mais s'il ne fonctionne pas, tu devrais avoir un message et la ligne qui pose problème.
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  5. #5
    Membre confirmé Avatar de CODYCO
    Homme Profil pro
    Webplanneur
    Inscrit en
    avril 2009
    Messages
    201
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Webplanneur
    Secteur : Bâtiment

    Informations forums :
    Inscription : avril 2009
    Messages : 201
    Points : 204
    Points
    204

    Par défaut

    En faite mon soucis est bien la c'est que je n'ai pas de message d'erreur, mais que seule les liens de tableau sont réparés et pas les graphiques...
    Webplanneur comme disait Plastik...

    Si la réponse répond à votre besoin, votre vote nous encouragera.
    Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •