Bonjour.
Il manque un petit quelque chose ta procdure.
Tu oublies aprs ta modification du lien de demander
une mise jour du lien. Ajoute une ligne de code ta
procdure :
Pour mettre jour les donnes avec un fichier source bien identifi,
on peut utiliser ceci :
'------------------------
With ThisWorkbook
.UpdateLink Name:=" C : AtravailClasseur1.xls", Type:=xlExcelLinks
End With
'------------------------
Pour mettre jours tous les liens du classeur
'-------------------------
With ThisWorkbook
Liens =. LinkSources(xlExcelLinks)
For Each lelien In Liens
.UpdateLink Name:=lelien, Type:=xlExcelLinks
Next
End With
"ttcpp" a crit dans le message de groupe de discussion
:
Bonjour,
J'ai un petit problme. J'essaye en vain de mettre jour des liaisons dans
un classeur en vba. Cela fonctionne trs bien pour les liaisons 'simples',
c'est dire vers une cellule d'un autre classeur.
Par contre impossible de mettre jour la liaison vers un classeur externe
quand celle -ci se trouve dans une une formule DECALER(...). Pourtant le
classeur dans lequel je veux rcuprer les valeurs est bien ouvert. La seule
solution que j'ai touver c'est de mettre jour la liaison via le menu
"Editions-Liaisons..". Mais ce n'est pas ce que je souhaite.
Le programme ci-dessous change le nom du chemin ainsi que le nom du fichier.
Le chemin est bien mis jour, par contre le nom du fichier ne change pas
(sauf pour les liaisons"simples").
Sub Traitement_Liaisons()
On Error Resume Next
Anc_Chemin_Rep = Sheets("Donnees").Range("D" & nl & "").Value
New_Chemin_Rep = Sheets("Donnees").Range("B" & nl & "").Value
A_N_F = Sheets("Donnees").Range("E" & nl & "").Value
N_N_F = Sheets("Donnees").Range("C" & nl & "").Value
ActiveWorkbook.ChangeLink Name:="" & Anc_Chemin_Rep & "" & A_N_F & "",
NewName:="" & New_Chemin_Rep & "" & N_N_F & "", Type:=xlExcelLinks
End Sub
Merci pour votre aide
Thierry
Bonjour.
Il manque un petit quelque chose ta procdure.
Tu oublies aprs ta modification du lien de demander
une mise jour du lien. Ajoute une ligne de code ta
procdure :
Pour mettre jour les donnes avec un fichier source bien identifi,
on peut utiliser ceci :
'------------------------
With ThisWorkbook
.UpdateLink Name:=" C : AtravailClasseur1.xls", Type:=xlExcelLinks
End With
'------------------------
Pour mettre jours tous les liens du classeur
'-------------------------
With ThisWorkbook
Liens =. LinkSources(xlExcelLinks)
For Each lelien In Liens
.UpdateLink Name:=lelien, Type:=xlExcelLinks
Next
End With
"ttcpp" <ttcpp@discussions.microsoft.com> a crit dans le message de groupe de discussion
: 78E44FC0-DF7C-4022-9229-59DE69FA297B@microsoft.com...
Bonjour,
J'ai un petit problme. J'essaye en vain de mettre jour des liaisons dans
un classeur en vba. Cela fonctionne trs bien pour les liaisons 'simples',
c'est dire vers une cellule d'un autre classeur.
Par contre impossible de mettre jour la liaison vers un classeur externe
quand celle -ci se trouve dans une une formule DECALER(...). Pourtant le
classeur dans lequel je veux rcuprer les valeurs est bien ouvert. La seule
solution que j'ai touver c'est de mettre jour la liaison via le menu
"Editions-Liaisons..". Mais ce n'est pas ce que je souhaite.
Le programme ci-dessous change le nom du chemin ainsi que le nom du fichier.
Le chemin est bien mis jour, par contre le nom du fichier ne change pas
(sauf pour les liaisons"simples").
Sub Traitement_Liaisons()
On Error Resume Next
Anc_Chemin_Rep = Sheets("Donnees").Range("D" & nl & "").Value
New_Chemin_Rep = Sheets("Donnees").Range("B" & nl & "").Value
A_N_F = Sheets("Donnees").Range("E" & nl & "").Value
N_N_F = Sheets("Donnees").Range("C" & nl & "").Value
ActiveWorkbook.ChangeLink Name:="" & Anc_Chemin_Rep & "" & A_N_F & "",
NewName:="" & New_Chemin_Rep & "" & N_N_F & "", Type:=xlExcelLinks
End Sub
Merci pour votre aide
Thierry
Bonjour.
Il manque un petit quelque chose ta procdure.
Tu oublies aprs ta modification du lien de demander
une mise jour du lien. Ajoute une ligne de code ta
procdure :
Pour mettre jour les donnes avec un fichier source bien identifi,
on peut utiliser ceci :
'------------------------
With ThisWorkbook
.UpdateLink Name:=" C : AtravailClasseur1.xls", Type:=xlExcelLinks
End With
'------------------------
Pour mettre jours tous les liens du classeur
'-------------------------
With ThisWorkbook
Liens =. LinkSources(xlExcelLinks)
For Each lelien In Liens
.UpdateLink Name:=lelien, Type:=xlExcelLinks
Next
End With
"ttcpp" a crit dans le message de groupe de discussion
:
Bonjour,
J'ai un petit problme. J'essaye en vain de mettre jour des liaisons dans
un classeur en vba. Cela fonctionne trs bien pour les liaisons 'simples',
c'est dire vers une cellule d'un autre classeur.
Par contre impossible de mettre jour la liaison vers un classeur externe
quand celle -ci se trouve dans une une formule DECALER(...). Pourtant le
classeur dans lequel je veux rcuprer les valeurs est bien ouvert. La seule
solution que j'ai touver c'est de mettre jour la liaison via le menu
"Editions-Liaisons..". Mais ce n'est pas ce que je souhaite.
Le programme ci-dessous change le nom du chemin ainsi que le nom du fichier.
Le chemin est bien mis jour, par contre le nom du fichier ne change pas
(sauf pour les liaisons"simples").
Sub Traitement_Liaisons()
On Error Resume Next
Anc_Chemin_Rep = Sheets("Donnees").Range("D" & nl & "").Value
New_Chemin_Rep = Sheets("Donnees").Range("B" & nl & "").Value
A_N_F = Sheets("Donnees").Range("E" & nl & "").Value
N_N_F = Sheets("Donnees").Range("C" & nl & "").Value
ActiveWorkbook.ChangeLink Name:="" & Anc_Chemin_Rep & "" & A_N_F & "",
NewName:="" & New_Chemin_Rep & "" & N_N_F & "", Type:=xlExcelLinks
End Sub
Merci pour votre aide
Thierry
Bonjour.
Il manque un petit quelque chose ta procdure.
Tu oublies aprs ta modification du lien de demander
une mise jour du lien. Ajoute une ligne de code ta
procdure :
Pour mettre jour les donnes avec un fichier source bien identifi,
on peut utiliser ceci :
'------------------------
With ThisWorkbook
.UpdateLink Name:=" C : AtravailClasseur1.xls", Type:=xlExcelLinks
End With
'------------------------
Pour mettre jours tous les liens du classeur
'-------------------------
With ThisWorkbook
Liens =. LinkSources(xlExcelLinks)
For Each lelien In Liens
.UpdateLink Name:=lelien, Type:=xlExcelLinks
Next
End With
"ttcpp" a crit dans le message de groupe de discussion
:
Bonjour,
J'ai un petit problme. J'essaye en vain de mettre jour des liaisons dans
un classeur en vba. Cela fonctionne trs bien pour les liaisons 'simples',
c'est dire vers une cellule d'un autre classeur.
Par contre impossible de mettre jour la liaison vers un classeur externe
quand celle -ci se trouve dans une une formule DECALER(...). Pourtant le
classeur dans lequel je veux rcuprer les valeurs est bien ouvert. La seule
solution que j'ai touver c'est de mettre jour la liaison via le menu
"Editions-Liaisons..". Mais ce n'est pas ce que je souhaite.
Le programme ci-dessous change le nom du chemin ainsi que le nom du fichier.
Le chemin est bien mis jour, par contre le nom du fichier ne change pas
(sauf pour les liaisons"simples").
Sub Traitement_Liaisons()
On Error Resume Next
Anc_Chemin_Rep = Sheets("Donnees").Range("D" & nl & "").Value
New_Chemin_Rep = Sheets("Donnees").Range("B" & nl & "").Value
A_N_F = Sheets("Donnees").Range("E" & nl & "").Value
N_N_F = Sheets("Donnees").Range("C" & nl & "").Value
ActiveWorkbook.ChangeLink Name:="" & Anc_Chemin_Rep & "" & A_N_F & "",
NewName:="" & New_Chemin_Rep & "" & N_N_F & "", Type:=xlExcelLinks
End Sub
Merci pour votre aide
Thierry
Bonjour.
Il manque un petit quelque chose ta procdure.
Tu oublies aprs ta modification du lien de demander
une mise jour du lien. Ajoute une ligne de code ta
procdure :
Pour mettre jour les donnes avec un fichier source bien identifi,
on peut utiliser ceci :
'------------------------
With ThisWorkbook
.UpdateLink Name:=" C : AtravailClasseur1.xls", Type:=xlExcelLinks
End With
'------------------------
Pour mettre jours tous les liens du classeur
'-------------------------
With ThisWorkbook
Liens =. LinkSources(xlExcelLinks)
For Each lelien In Liens
.UpdateLink Name:=lelien, Type:=xlExcelLinks
Next
End With
"ttcpp" <ttcpp@discussions.microsoft.com> a crit dans le message de groupe de discussion
: 78E44FC0-DF7C-4022-9229-59DE69FA297B@microsoft.com...
Bonjour,
J'ai un petit problme. J'essaye en vain de mettre jour des liaisons dans
un classeur en vba. Cela fonctionne trs bien pour les liaisons 'simples',
c'est dire vers une cellule d'un autre classeur.
Par contre impossible de mettre jour la liaison vers un classeur externe
quand celle -ci se trouve dans une une formule DECALER(...). Pourtant le
classeur dans lequel je veux rcuprer les valeurs est bien ouvert. La seule
solution que j'ai touver c'est de mettre jour la liaison via le menu
"Editions-Liaisons..". Mais ce n'est pas ce que je souhaite.
Le programme ci-dessous change le nom du chemin ainsi que le nom du fichier.
Le chemin est bien mis jour, par contre le nom du fichier ne change pas
(sauf pour les liaisons"simples").
Sub Traitement_Liaisons()
On Error Resume Next
Anc_Chemin_Rep = Sheets("Donnees").Range("D" & nl & "").Value
New_Chemin_Rep = Sheets("Donnees").Range("B" & nl & "").Value
A_N_F = Sheets("Donnees").Range("E" & nl & "").Value
N_N_F = Sheets("Donnees").Range("C" & nl & "").Value
ActiveWorkbook.ChangeLink Name:="" & Anc_Chemin_Rep & "" & A_N_F & "",
NewName:="" & New_Chemin_Rep & "" & N_N_F & "", Type:=xlExcelLinks
End Sub
Merci pour votre aide
Thierry
Bonjour.
Il manque un petit quelque chose ta procdure.
Tu oublies aprs ta modification du lien de demander
une mise jour du lien. Ajoute une ligne de code ta
procdure :
Pour mettre jour les donnes avec un fichier source bien identifi,
on peut utiliser ceci :
'------------------------
With ThisWorkbook
.UpdateLink Name:=" C : AtravailClasseur1.xls", Type:=xlExcelLinks
End With
'------------------------
Pour mettre jours tous les liens du classeur
'-------------------------
With ThisWorkbook
Liens =. LinkSources(xlExcelLinks)
For Each lelien In Liens
.UpdateLink Name:=lelien, Type:=xlExcelLinks
Next
End With
"ttcpp" a crit dans le message de groupe de discussion
:
Bonjour,
J'ai un petit problme. J'essaye en vain de mettre jour des liaisons dans
un classeur en vba. Cela fonctionne trs bien pour les liaisons 'simples',
c'est dire vers une cellule d'un autre classeur.
Par contre impossible de mettre jour la liaison vers un classeur externe
quand celle -ci se trouve dans une une formule DECALER(...). Pourtant le
classeur dans lequel je veux rcuprer les valeurs est bien ouvert. La seule
solution que j'ai touver c'est de mettre jour la liaison via le menu
"Editions-Liaisons..". Mais ce n'est pas ce que je souhaite.
Le programme ci-dessous change le nom du chemin ainsi que le nom du fichier.
Le chemin est bien mis jour, par contre le nom du fichier ne change pas
(sauf pour les liaisons"simples").
Sub Traitement_Liaisons()
On Error Resume Next
Anc_Chemin_Rep = Sheets("Donnees").Range("D" & nl & "").Value
New_Chemin_Rep = Sheets("Donnees").Range("B" & nl & "").Value
A_N_F = Sheets("Donnees").Range("E" & nl & "").Value
N_N_F = Sheets("Donnees").Range("C" & nl & "").Value
ActiveWorkbook.ChangeLink Name:="" & Anc_Chemin_Rep & "" & A_N_F & "",
NewName:="" & New_Chemin_Rep & "" & N_N_F & "", Type:=xlExcelLinks
End Sub
Merci pour votre aide
Thierry
Si c'est possible, publie cette adresse Cjoint.com (500 Ko maximum)
un bout de ton fichier illustrant une plage de cellules avec les
formules et les liens qu'elles possdent. De plus, mentionne par quoi
tu veux remplacer le lien que le fichier possde !
IL ne faut pas oublier de publier ici l'adresse obtenue.
"ttcpp" a crit dans le message de groupe de discussion
:
Merci pour ta rponse , mais cela ne fonctionne pas. En fait quand j'crits
que la mise ne s'ffectue pas , il faut comprendre que le nouveau nom du
fichier sur lequel je veux pointer ne change pas, je n'arrivea pas l
modifier par le code VBA mais seulement en actualisant manuellement la
liaison . Sinon pour les autres liaisons tout est ok.
"MichDenis" a crit :
> Bonjour.
>
> Il manque un petit quelque chose ta procdure.
> Tu oublies aprs ta modification du lien de demander
> une mise jour du lien. Ajoute une ligne de code ta
> procdure :
>
>
> Pour mettre jour les donnes avec un fichier source bien identifi,
> on peut utiliser ceci :
> '------------------------
> With ThisWorkbook
> .UpdateLink Name:=" C : AtravailClasseur1.xls", Type:=xlExcelLinks
> End With
> '------------------------
>
> Pour mettre jours tous les liens du classeur
> '-------------------------
> With ThisWorkbook
> Liens =. LinkSources(xlExcelLinks)
> For Each lelien In Liens
> .UpdateLink Name:=lelien, Type:=xlExcelLinks
> Next
> End With
>
>
>
>
> "ttcpp" a crit dans le message de groupe de discussion
> :
> Bonjour,
>
> J'ai un petit problme. J'essaye en vain de mettre jour des liaisons dans
> un classeur en vba. Cela fonctionne trs bien pour les liaisons 'simples',
> c'est dire vers une cellule d'un autre classeur.
> Par contre impossible de mettre jour la liaison vers un classeur externe
> quand celle -ci se trouve dans une une formule DECALER(...). Pourtant le
> classeur dans lequel je veux rcuprer les valeurs est bien ouvert. La seule
> solution que j'ai touver c'est de mettre jour la liaison via le menu
> "Editions-Liaisons..". Mais ce n'est pas ce que je souhaite.
> Le programme ci-dessous change le nom du chemin ainsi que le nom du fichier.
> Le chemin est bien mis jour, par contre le nom du fichier ne change pas
> (sauf pour les liaisons"simples").
>
> Sub Traitement_Liaisons()
> On Error Resume Next
> Anc_Chemin_Rep = Sheets("Donnees").Range("D" & nl & "").Value
> New_Chemin_Rep = Sheets("Donnees").Range("B" & nl & "").Value
> A_N_F = Sheets("Donnees").Range("E" & nl & "").Value
> N_N_F = Sheets("Donnees").Range("C" & nl & "").Value
>
> ActiveWorkbook.ChangeLink Name:="" & Anc_Chemin_Rep & "" & A_N_F & "",
> NewName:="" & New_Chemin_Rep & "" & N_N_F & "", Type:=xlExcelLinks
>
> End Sub
>
> Merci pour votre aide
> Thierry
>
>
Si c'est possible, publie cette adresse Cjoint.com (500 Ko maximum)
un bout de ton fichier illustrant une plage de cellules avec les
formules et les liens qu'elles possdent. De plus, mentionne par quoi
tu veux remplacer le lien que le fichier possde !
IL ne faut pas oublier de publier ici l'adresse obtenue.
"ttcpp" <ttcpp@discussions.microsoft.com> a crit dans le message de groupe de discussion
: 6C0266AC-55A6-4FD1-AB02-14BD6FAD72FA@microsoft.com...
Merci pour ta rponse , mais cela ne fonctionne pas. En fait quand j'crits
que la mise ne s'ffectue pas , il faut comprendre que le nouveau nom du
fichier sur lequel je veux pointer ne change pas, je n'arrivea pas l
modifier par le code VBA mais seulement en actualisant manuellement la
liaison . Sinon pour les autres liaisons tout est ok.
"MichDenis" a crit :
> Bonjour.
>
> Il manque un petit quelque chose ta procdure.
> Tu oublies aprs ta modification du lien de demander
> une mise jour du lien. Ajoute une ligne de code ta
> procdure :
>
>
> Pour mettre jour les donnes avec un fichier source bien identifi,
> on peut utiliser ceci :
> '------------------------
> With ThisWorkbook
> .UpdateLink Name:=" C : AtravailClasseur1.xls", Type:=xlExcelLinks
> End With
> '------------------------
>
> Pour mettre jours tous les liens du classeur
> '-------------------------
> With ThisWorkbook
> Liens =. LinkSources(xlExcelLinks)
> For Each lelien In Liens
> .UpdateLink Name:=lelien, Type:=xlExcelLinks
> Next
> End With
>
>
>
>
> "ttcpp" <ttcpp@discussions.microsoft.com> a crit dans le message de groupe de discussion
> : 78E44FC0-DF7C-4022-9229-59DE69FA297B@microsoft.com...
> Bonjour,
>
> J'ai un petit problme. J'essaye en vain de mettre jour des liaisons dans
> un classeur en vba. Cela fonctionne trs bien pour les liaisons 'simples',
> c'est dire vers une cellule d'un autre classeur.
> Par contre impossible de mettre jour la liaison vers un classeur externe
> quand celle -ci se trouve dans une une formule DECALER(...). Pourtant le
> classeur dans lequel je veux rcuprer les valeurs est bien ouvert. La seule
> solution que j'ai touver c'est de mettre jour la liaison via le menu
> "Editions-Liaisons..". Mais ce n'est pas ce que je souhaite.
> Le programme ci-dessous change le nom du chemin ainsi que le nom du fichier.
> Le chemin est bien mis jour, par contre le nom du fichier ne change pas
> (sauf pour les liaisons"simples").
>
> Sub Traitement_Liaisons()
> On Error Resume Next
> Anc_Chemin_Rep = Sheets("Donnees").Range("D" & nl & "").Value
> New_Chemin_Rep = Sheets("Donnees").Range("B" & nl & "").Value
> A_N_F = Sheets("Donnees").Range("E" & nl & "").Value
> N_N_F = Sheets("Donnees").Range("C" & nl & "").Value
>
> ActiveWorkbook.ChangeLink Name:="" & Anc_Chemin_Rep & "" & A_N_F & "",
> NewName:="" & New_Chemin_Rep & "" & N_N_F & "", Type:=xlExcelLinks
>
> End Sub
>
> Merci pour votre aide
> Thierry
>
>
Si c'est possible, publie cette adresse Cjoint.com (500 Ko maximum)
un bout de ton fichier illustrant une plage de cellules avec les
formules et les liens qu'elles possdent. De plus, mentionne par quoi
tu veux remplacer le lien que le fichier possde !
IL ne faut pas oublier de publier ici l'adresse obtenue.
"ttcpp" a crit dans le message de groupe de discussion
:
Merci pour ta rponse , mais cela ne fonctionne pas. En fait quand j'crits
que la mise ne s'ffectue pas , il faut comprendre que le nouveau nom du
fichier sur lequel je veux pointer ne change pas, je n'arrivea pas l
modifier par le code VBA mais seulement en actualisant manuellement la
liaison . Sinon pour les autres liaisons tout est ok.
"MichDenis" a crit :
> Bonjour.
>
> Il manque un petit quelque chose ta procdure.
> Tu oublies aprs ta modification du lien de demander
> une mise jour du lien. Ajoute une ligne de code ta
> procdure :
>
>
> Pour mettre jour les donnes avec un fichier source bien identifi,
> on peut utiliser ceci :
> '------------------------
> With ThisWorkbook
> .UpdateLink Name:=" C : AtravailClasseur1.xls", Type:=xlExcelLinks
> End With
> '------------------------
>
> Pour mettre jours tous les liens du classeur
> '-------------------------
> With ThisWorkbook
> Liens =. LinkSources(xlExcelLinks)
> For Each lelien In Liens
> .UpdateLink Name:=lelien, Type:=xlExcelLinks
> Next
> End With
>
>
>
>
> "ttcpp" a crit dans le message de groupe de discussion
> :
> Bonjour,
>
> J'ai un petit problme. J'essaye en vain de mettre jour des liaisons dans
> un classeur en vba. Cela fonctionne trs bien pour les liaisons 'simples',
> c'est dire vers une cellule d'un autre classeur.
> Par contre impossible de mettre jour la liaison vers un classeur externe
> quand celle -ci se trouve dans une une formule DECALER(...). Pourtant le
> classeur dans lequel je veux rcuprer les valeurs est bien ouvert. La seule
> solution que j'ai touver c'est de mettre jour la liaison via le menu
> "Editions-Liaisons..". Mais ce n'est pas ce que je souhaite.
> Le programme ci-dessous change le nom du chemin ainsi que le nom du fichier.
> Le chemin est bien mis jour, par contre le nom du fichier ne change pas
> (sauf pour les liaisons"simples").
>
> Sub Traitement_Liaisons()
> On Error Resume Next
> Anc_Chemin_Rep = Sheets("Donnees").Range("D" & nl & "").Value
> New_Chemin_Rep = Sheets("Donnees").Range("B" & nl & "").Value
> A_N_F = Sheets("Donnees").Range("E" & nl & "").Value
> N_N_F = Sheets("Donnees").Range("C" & nl & "").Value
>
> ActiveWorkbook.ChangeLink Name:="" & Anc_Chemin_Rep & "" & A_N_F & "",
> NewName:="" & New_Chemin_Rep & "" & N_N_F & "", Type:=xlExcelLinks
>
> End Sub
>
> Merci pour votre aide
> Thierry
>
>
Si c'est possible, publie cette adresse Cjoint.com (500 Ko maximum)
un bout de ton fichier illustrant une plage de cellules avec les
formules et les liens qu'elles possdent. De plus, mentionne par quoi
tu veux remplacer le lien que le fichier possde !
IL ne faut pas oublier de publier ici l'adresse obtenue.
"ttcpp" a crit dans le message de groupe de discussion
:
Merci pour ta rponse , mais cela ne fonctionne pas. En fait quand j'crits
que la mise ne s'ffectue pas , il faut comprendre que le nouveau nom du
fichier sur lequel je veux pointer ne change pas, je n'arrivea pas l
modifier par le code VBA mais seulement en actualisant manuellement la
liaison . Sinon pour les autres liaisons tout est ok.
"MichDenis" a crit :
> Bonjour.
>
> Il manque un petit quelque chose ta procdure.
> Tu oublies aprs ta modification du lien de demander
> une mise jour du lien. Ajoute une ligne de code ta
> procdure :
>
>
> Pour mettre jour les donnes avec un fichier source bien identifi,
> on peut utiliser ceci :
> '------------------------
> With ThisWorkbook
> .UpdateLink Name:=" C : AtravailClasseur1.xls", Type:=xlExcelLinks
> End With
> '------------------------
>
> Pour mettre jours tous les liens du classeur
> '-------------------------
> With ThisWorkbook
> Liens =. LinkSources(xlExcelLinks)
> For Each lelien In Liens
> .UpdateLink Name:=lelien, Type:=xlExcelLinks
> Next
> End With
>
>
>
>
> "ttcpp" a crit dans le message de groupe de
> discussion
> :
> Bonjour,
>
> J'ai un petit problme. J'essaye en vain de mettre jour des liaisons dans
> un classeur en vba. Cela fonctionne trs bien pour les liaisons 'simples',
> c'est dire vers une cellule d'un autre classeur.
> Par contre impossible de mettre jour la liaison vers un classeur externe
> quand celle -ci se trouve dans une une formule DECALER(...). Pourtant le
> classeur dans lequel je veux rcuprer les valeurs est bien ouvert. La seule
> solution que j'ai touver c'est de mettre jour la liaison via le menu
> "Editions-Liaisons..". Mais ce n'est pas ce que je souhaite.
> Le programme ci-dessous change le nom du chemin ainsi que le nom du fichier.
> Le chemin est bien mis jour, par contre le nom du fichier ne change pas
> (sauf pour les liaisons"simples").
>
> Sub Traitement_Liaisons()
> On Error Resume Next
> Anc_Chemin_Rep = Sheets("Donnees").Range("D" & nl & "").Value
> New_Chemin_Rep = Sheets("Donnees").Range("B" & nl & "").Value
> A_N_F = Sheets("Donnees").Range("E" & nl & "").Value
> N_N_F = Sheets("Donnees").Range("C" & nl & "").Value
>
> ActiveWorkbook.ChangeLink Name:="" & Anc_Chemin_Rep & "" & A_N_F & "",
> NewName:="" & New_Chemin_Rep & "" & N_N_F & "", Type:=xlExcelLinks
>
> End Sub
>
> Merci pour votre aide
> Thierry
>
>
Si c'est possible, publie cette adresse Cjoint.com (500 Ko maximum)
un bout de ton fichier illustrant une plage de cellules avec les
formules et les liens qu'elles possdent. De plus, mentionne par quoi
tu veux remplacer le lien que le fichier possde !
IL ne faut pas oublier de publier ici l'adresse obtenue.
"ttcpp" <ttcpp@discussions.microsoft.com> a crit dans le message de groupe de discussion
: 6C0266AC-55A6-4FD1-AB02-14BD6FAD72FA@microsoft.com...
Merci pour ta rponse , mais cela ne fonctionne pas. En fait quand j'crits
que la mise ne s'ffectue pas , il faut comprendre que le nouveau nom du
fichier sur lequel je veux pointer ne change pas, je n'arrivea pas l
modifier par le code VBA mais seulement en actualisant manuellement la
liaison . Sinon pour les autres liaisons tout est ok.
"MichDenis" a crit :
> Bonjour.
>
> Il manque un petit quelque chose ta procdure.
> Tu oublies aprs ta modification du lien de demander
> une mise jour du lien. Ajoute une ligne de code ta
> procdure :
>
>
> Pour mettre jour les donnes avec un fichier source bien identifi,
> on peut utiliser ceci :
> '------------------------
> With ThisWorkbook
> .UpdateLink Name:=" C : AtravailClasseur1.xls", Type:=xlExcelLinks
> End With
> '------------------------
>
> Pour mettre jours tous les liens du classeur
> '-------------------------
> With ThisWorkbook
> Liens =. LinkSources(xlExcelLinks)
> For Each lelien In Liens
> .UpdateLink Name:=lelien, Type:=xlExcelLinks
> Next
> End With
>
>
>
>
> "ttcpp" <ttcpp@discussions.microsoft.com> a crit dans le message de groupe de
> discussion
> : 78E44FC0-DF7C-4022-9229-59DE69FA297B@microsoft.com...
> Bonjour,
>
> J'ai un petit problme. J'essaye en vain de mettre jour des liaisons dans
> un classeur en vba. Cela fonctionne trs bien pour les liaisons 'simples',
> c'est dire vers une cellule d'un autre classeur.
> Par contre impossible de mettre jour la liaison vers un classeur externe
> quand celle -ci se trouve dans une une formule DECALER(...). Pourtant le
> classeur dans lequel je veux rcuprer les valeurs est bien ouvert. La seule
> solution que j'ai touver c'est de mettre jour la liaison via le menu
> "Editions-Liaisons..". Mais ce n'est pas ce que je souhaite.
> Le programme ci-dessous change le nom du chemin ainsi que le nom du fichier.
> Le chemin est bien mis jour, par contre le nom du fichier ne change pas
> (sauf pour les liaisons"simples").
>
> Sub Traitement_Liaisons()
> On Error Resume Next
> Anc_Chemin_Rep = Sheets("Donnees").Range("D" & nl & "").Value
> New_Chemin_Rep = Sheets("Donnees").Range("B" & nl & "").Value
> A_N_F = Sheets("Donnees").Range("E" & nl & "").Value
> N_N_F = Sheets("Donnees").Range("C" & nl & "").Value
>
> ActiveWorkbook.ChangeLink Name:="" & Anc_Chemin_Rep & "" & A_N_F & "",
> NewName:="" & New_Chemin_Rep & "" & N_N_F & "", Type:=xlExcelLinks
>
> End Sub
>
> Merci pour votre aide
> Thierry
>
>
Si c'est possible, publie cette adresse Cjoint.com (500 Ko maximum)
un bout de ton fichier illustrant une plage de cellules avec les
formules et les liens qu'elles possdent. De plus, mentionne par quoi
tu veux remplacer le lien que le fichier possde !
IL ne faut pas oublier de publier ici l'adresse obtenue.
"ttcpp" a crit dans le message de groupe de discussion
:
Merci pour ta rponse , mais cela ne fonctionne pas. En fait quand j'crits
que la mise ne s'ffectue pas , il faut comprendre que le nouveau nom du
fichier sur lequel je veux pointer ne change pas, je n'arrivea pas l
modifier par le code VBA mais seulement en actualisant manuellement la
liaison . Sinon pour les autres liaisons tout est ok.
"MichDenis" a crit :
> Bonjour.
>
> Il manque un petit quelque chose ta procdure.
> Tu oublies aprs ta modification du lien de demander
> une mise jour du lien. Ajoute une ligne de code ta
> procdure :
>
>
> Pour mettre jour les donnes avec un fichier source bien identifi,
> on peut utiliser ceci :
> '------------------------
> With ThisWorkbook
> .UpdateLink Name:=" C : AtravailClasseur1.xls", Type:=xlExcelLinks
> End With
> '------------------------
>
> Pour mettre jours tous les liens du classeur
> '-------------------------
> With ThisWorkbook
> Liens =. LinkSources(xlExcelLinks)
> For Each lelien In Liens
> .UpdateLink Name:=lelien, Type:=xlExcelLinks
> Next
> End With
>
>
>
>
> "ttcpp" a crit dans le message de groupe de
> discussion
> :
> Bonjour,
>
> J'ai un petit problme. J'essaye en vain de mettre jour des liaisons dans
> un classeur en vba. Cela fonctionne trs bien pour les liaisons 'simples',
> c'est dire vers une cellule d'un autre classeur.
> Par contre impossible de mettre jour la liaison vers un classeur externe
> quand celle -ci se trouve dans une une formule DECALER(...). Pourtant le
> classeur dans lequel je veux rcuprer les valeurs est bien ouvert. La seule
> solution que j'ai touver c'est de mettre jour la liaison via le menu
> "Editions-Liaisons..". Mais ce n'est pas ce que je souhaite.
> Le programme ci-dessous change le nom du chemin ainsi que le nom du fichier.
> Le chemin est bien mis jour, par contre le nom du fichier ne change pas
> (sauf pour les liaisons"simples").
>
> Sub Traitement_Liaisons()
> On Error Resume Next
> Anc_Chemin_Rep = Sheets("Donnees").Range("D" & nl & "").Value
> New_Chemin_Rep = Sheets("Donnees").Range("B" & nl & "").Value
> A_N_F = Sheets("Donnees").Range("E" & nl & "").Value
> N_N_F = Sheets("Donnees").Range("C" & nl & "").Value
>
> ActiveWorkbook.ChangeLink Name:="" & Anc_Chemin_Rep & "" & A_N_F & "",
> NewName:="" & New_Chemin_Rep & "" & N_N_F & "", Type:=xlExcelLinks
>
> End Sub
>
> Merci pour votre aide
> Thierry
>
>
Dans la procdure, supprime cette ligne : Mise__jour
c'est un rsidu d'un copier-coller.
Dsol.
Dans la procdure, supprime cette ligne : Mise__jour
c'est un rsidu d'un copier-coller.
Dsol.
Dans la procdure, supprime cette ligne : Mise__jour
c'est un rsidu d'un copier-coller.
Dsol.