faire varier liens externes avec valeur cellule ou onglet
3 réponses
Val
Bonjour a tous !
Je debute avec le VBA et malgré les bouquins achetés pour bachoter dans mon
coin, bah je cale..
Je vous explique :
J'ai une feuille excel dans laquelle la cellule I1 permet de déterminer le
nom de l'onglet, et l'evenement workbook close permet à la fermeture du
fichier de générer un fichier enregistré avec le nom de l'onglet.
Jusque la, ca marche. C'est déja ca, vous allez me dire.
Je cale cependant sur un autre probleme.
Mon tableau aux 36000 cellules renvoient a des valeurs contenues dans des
cellules de fichiers externes. Bon, ca c'est pas un probleme.
Mon probleme c'est que je souhaiterai que le chemin varie en fonction du nom
de l'onglet, car les onglets sont des noms de sociétés que je retrouve
également dans les autres fichiers (dans d'autres répertoires, evidemment).
Ainsi, le nom du fichier et l'onglet du fichier a l'interieur de ce fichier
externe doit varier avec le nom de l'onglet de la feuille courante.
Ex : J'ai mon fichier toto dans le repertoire trucmuche (généré
automatiquement par le code d'enregistrement) dans lequel les cellules de la
feuille toto font appel aux données présentes dans la feuille toto du
fichier toto du repertoire machin
Lecteur reseau, Repertoire machin, sous repertoire truc, fichier Toto,
onglet toto
mais voila, comment faire varier le nom du fichier et le nom de la feuille
en fonction de l'onglet de la feuille (ou de la valeur en "I1", au choix )?
vous allez me dire que je pourrai le faire manuellement, mais je souhaiterai
a cet effet automatiser la creation de 70 fichiers identiques, dont seul le
nom change.
Hmmm, je me demande si je suis tres claire quand meme.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
LSteph
Bonsoir, si ton but st vraiment de créer n="70 "répertoires toto"n" avec un fifi du même non que la fefeuille dedans soit toto "n" itou alors voici: ''*** sub ongletdir() Dim i as integer,mydir as string mydir=curdir
for i= 1 to 70 mkdir activesheet.name & i activeworkbook.saveas activesheet.name & i &".xls" chdir mydir next
end sub '***
'lSteph "Val" a écrit dans le message de news: 43160207$0$5409$
Bonjour a tous !
Je debute avec le VBA et malgré les bouquins achetés pour bachoter dans mon coin, bah je cale.. Je vous explique :
J'ai une feuille excel dans laquelle la cellule I1 permet de déterminer le nom de l'onglet, et l'evenement workbook close permet à la fermeture du fichier de générer un fichier enregistré avec le nom de l'onglet. Jusque la, ca marche. C'est déja ca, vous allez me dire. Je cale cependant sur un autre probleme. Mon tableau aux 36000 cellules renvoient a des valeurs contenues dans des cellules de fichiers externes. Bon, ca c'est pas un probleme. Mon probleme c'est que je souhaiterai que le chemin varie en fonction du nom de l'onglet, car les onglets sont des noms de sociétés que je retrouve également dans les autres fichiers (dans d'autres répertoires, evidemment). Ainsi, le nom du fichier et l'onglet du fichier a l'interieur de ce fichier externe doit varier avec le nom de l'onglet de la feuille courante.
Ex : J'ai mon fichier toto dans le repertoire trucmuche (généré automatiquement par le code d'enregistrement) dans lequel les cellules de la feuille toto font appel aux données présentes dans la feuille toto du fichier toto du repertoire machin Lecteur reseau, Repertoire machin, sous repertoire truc, fichier Toto, onglet toto
='lecteur reseaumachintruc[toto.xls]toto'!A29
mais voila, comment faire varier le nom du fichier et le nom de la feuille en fonction de l'onglet de la feuille (ou de la valeur en "I1", au choix )?
vous allez me dire que je pourrai le faire manuellement, mais je souhaiterai a cet effet automatiser la creation de 70 fichiers identiques, dont seul le nom change.
Hmmm, je me demande si je suis tres claire quand meme.
Merci pour votre aide!!!
Valérie
Bonsoir,
si ton but st vraiment de créer n="70 "répertoires toto"n"
avec un fifi du même non que la fefeuille dedans soit toto "n" itou
alors voici:
''***
sub ongletdir()
Dim i as integer,mydir as string
mydir=curdir
for i= 1 to 70
mkdir activesheet.name & i
activeworkbook.saveas activesheet.name & i &".xls"
chdir mydir
next
end sub
'***
'lSteph
"Val" <valayriiie@yahoo.com> a écrit dans le message de news:
43160207$0$5409$8fcfb975@news.wanadoo.fr...
Bonjour a tous !
Je debute avec le VBA et malgré les bouquins achetés pour bachoter dans
mon coin, bah je cale..
Je vous explique :
J'ai une feuille excel dans laquelle la cellule I1 permet de déterminer le
nom de l'onglet, et l'evenement workbook close permet à la fermeture du
fichier de générer un fichier enregistré avec le nom de l'onglet.
Jusque la, ca marche. C'est déja ca, vous allez me dire.
Je cale cependant sur un autre probleme.
Mon tableau aux 36000 cellules renvoient a des valeurs contenues dans des
cellules de fichiers externes. Bon, ca c'est pas un probleme.
Mon probleme c'est que je souhaiterai que le chemin varie en fonction du
nom de l'onglet, car les onglets sont des noms de sociétés que je retrouve
également dans les autres fichiers (dans d'autres répertoires,
evidemment).
Ainsi, le nom du fichier et l'onglet du fichier a l'interieur de ce
fichier externe doit varier avec le nom de l'onglet de la feuille
courante.
Ex : J'ai mon fichier toto dans le repertoire trucmuche (généré
automatiquement par le code d'enregistrement) dans lequel les cellules de
la feuille toto font appel aux données présentes dans la feuille toto du
fichier toto du repertoire machin
Lecteur reseau, Repertoire machin, sous repertoire truc, fichier Toto,
onglet toto
='\lecteur reseaumachintruc[toto.xls]toto'!A29
mais voila, comment faire varier le nom du fichier et le nom de la feuille
en fonction de l'onglet de la feuille (ou de la valeur en "I1", au
choix )?
vous allez me dire que je pourrai le faire manuellement, mais je
souhaiterai a cet effet automatiser la creation de 70 fichiers identiques,
dont seul le nom change.
Hmmm, je me demande si je suis tres claire quand meme.
Bonsoir, si ton but st vraiment de créer n="70 "répertoires toto"n" avec un fifi du même non que la fefeuille dedans soit toto "n" itou alors voici: ''*** sub ongletdir() Dim i as integer,mydir as string mydir=curdir
for i= 1 to 70 mkdir activesheet.name & i activeworkbook.saveas activesheet.name & i &".xls" chdir mydir next
end sub '***
'lSteph "Val" a écrit dans le message de news: 43160207$0$5409$
Bonjour a tous !
Je debute avec le VBA et malgré les bouquins achetés pour bachoter dans mon coin, bah je cale.. Je vous explique :
J'ai une feuille excel dans laquelle la cellule I1 permet de déterminer le nom de l'onglet, et l'evenement workbook close permet à la fermeture du fichier de générer un fichier enregistré avec le nom de l'onglet. Jusque la, ca marche. C'est déja ca, vous allez me dire. Je cale cependant sur un autre probleme. Mon tableau aux 36000 cellules renvoient a des valeurs contenues dans des cellules de fichiers externes. Bon, ca c'est pas un probleme. Mon probleme c'est que je souhaiterai que le chemin varie en fonction du nom de l'onglet, car les onglets sont des noms de sociétés que je retrouve également dans les autres fichiers (dans d'autres répertoires, evidemment). Ainsi, le nom du fichier et l'onglet du fichier a l'interieur de ce fichier externe doit varier avec le nom de l'onglet de la feuille courante.
Ex : J'ai mon fichier toto dans le repertoire trucmuche (généré automatiquement par le code d'enregistrement) dans lequel les cellules de la feuille toto font appel aux données présentes dans la feuille toto du fichier toto du repertoire machin Lecteur reseau, Repertoire machin, sous repertoire truc, fichier Toto, onglet toto
='lecteur reseaumachintruc[toto.xls]toto'!A29
mais voila, comment faire varier le nom du fichier et le nom de la feuille en fonction de l'onglet de la feuille (ou de la valeur en "I1", au choix )?
vous allez me dire que je pourrai le faire manuellement, mais je souhaiterai a cet effet automatiser la creation de 70 fichiers identiques, dont seul le nom change.
Hmmm, je me demande si je suis tres claire quand meme.
Merci pour votre aide!!!
Valérie
LSteph
...pardon pour que le fichier soit dedans, un détail aussi (que le rep n'existe pas déjà) :
''*** Sub ongletdir() Dim i As Integer, mydir As String mydir = CurDir
For i = 1 To 10
MkDir ActiveSheet.Name & i ActiveWorkbook.SaveAs ActiveSheet.Name & i & _ "" & ActiveSheet.Name & i & ".xls" ChDir mydir Next
End Sub '***
"Val" a écrit dans le message de news: 43160207$0$5409$
Bonjour a tous !
Je debute avec le VBA et malgré les bouquins achetés pour bachoter dans mon coin, bah je cale.. Je vous explique :
J'ai une feuille excel dans laquelle la cellule I1 permet de déterminer le nom de l'onglet, et l'evenement workbook close permet à la fermeture du fichier de générer un fichier enregistré avec le nom de l'onglet. Jusque la, ca marche. C'est déja ca, vous allez me dire. Je cale cependant sur un autre probleme. Mon tableau aux 36000 cellules renvoient a des valeurs contenues dans des cellules de fichiers externes. Bon, ca c'est pas un probleme. Mon probleme c'est que je souhaiterai que le chemin varie en fonction du nom de l'onglet, car les onglets sont des noms de sociétés que je retrouve également dans les autres fichiers (dans d'autres répertoires, evidemment). Ainsi, le nom du fichier et l'onglet du fichier a l'interieur de ce fichier externe doit varier avec le nom de l'onglet de la feuille courante.
Ex : J'ai mon fichier toto dans le repertoire trucmuche (généré automatiquement par le code d'enregistrement) dans lequel les cellules de la feuille toto font appel aux données présentes dans la feuille toto du fichier toto du repertoire machin Lecteur reseau, Repertoire machin, sous repertoire truc, fichier Toto, onglet toto
='lecteur reseaumachintruc[toto.xls]toto'!A29
mais voila, comment faire varier le nom du fichier et le nom de la feuille en fonction de l'onglet de la feuille (ou de la valeur en "I1", au choix )?
vous allez me dire que je pourrai le faire manuellement, mais je souhaiterai a cet effet automatiser la creation de 70 fichiers identiques, dont seul le nom change.
Hmmm, je me demande si je suis tres claire quand meme.
Merci pour votre aide!!!
Valérie
...pardon pour que le fichier soit dedans, un détail aussi (que le rep
n'existe pas déjà) :
''***
Sub ongletdir()
Dim i As Integer, mydir As String
mydir = CurDir
For i = 1 To 10
MkDir ActiveSheet.Name & i
ActiveWorkbook.SaveAs ActiveSheet.Name & i & _
"" & ActiveSheet.Name & i & ".xls"
ChDir mydir
Next
End Sub
'***
"Val" <valayriiie@yahoo.com> a écrit dans le message de news:
43160207$0$5409$8fcfb975@news.wanadoo.fr...
Bonjour a tous !
Je debute avec le VBA et malgré les bouquins achetés pour bachoter dans
mon coin, bah je cale..
Je vous explique :
J'ai une feuille excel dans laquelle la cellule I1 permet de déterminer le
nom de l'onglet, et l'evenement workbook close permet à la fermeture du
fichier de générer un fichier enregistré avec le nom de l'onglet.
Jusque la, ca marche. C'est déja ca, vous allez me dire.
Je cale cependant sur un autre probleme.
Mon tableau aux 36000 cellules renvoient a des valeurs contenues dans des
cellules de fichiers externes. Bon, ca c'est pas un probleme.
Mon probleme c'est que je souhaiterai que le chemin varie en fonction du
nom de l'onglet, car les onglets sont des noms de sociétés que je retrouve
également dans les autres fichiers (dans d'autres répertoires,
evidemment).
Ainsi, le nom du fichier et l'onglet du fichier a l'interieur de ce
fichier externe doit varier avec le nom de l'onglet de la feuille
courante.
Ex : J'ai mon fichier toto dans le repertoire trucmuche (généré
automatiquement par le code d'enregistrement) dans lequel les cellules de
la feuille toto font appel aux données présentes dans la feuille toto du
fichier toto du repertoire machin
Lecteur reseau, Repertoire machin, sous repertoire truc, fichier Toto,
onglet toto
='\lecteur reseaumachintruc[toto.xls]toto'!A29
mais voila, comment faire varier le nom du fichier et le nom de la feuille
en fonction de l'onglet de la feuille (ou de la valeur en "I1", au
choix )?
vous allez me dire que je pourrai le faire manuellement, mais je
souhaiterai a cet effet automatiser la creation de 70 fichiers identiques,
dont seul le nom change.
Hmmm, je me demande si je suis tres claire quand meme.
...pardon pour que le fichier soit dedans, un détail aussi (que le rep n'existe pas déjà) :
''*** Sub ongletdir() Dim i As Integer, mydir As String mydir = CurDir
For i = 1 To 10
MkDir ActiveSheet.Name & i ActiveWorkbook.SaveAs ActiveSheet.Name & i & _ "" & ActiveSheet.Name & i & ".xls" ChDir mydir Next
End Sub '***
"Val" a écrit dans le message de news: 43160207$0$5409$
Bonjour a tous !
Je debute avec le VBA et malgré les bouquins achetés pour bachoter dans mon coin, bah je cale.. Je vous explique :
J'ai une feuille excel dans laquelle la cellule I1 permet de déterminer le nom de l'onglet, et l'evenement workbook close permet à la fermeture du fichier de générer un fichier enregistré avec le nom de l'onglet. Jusque la, ca marche. C'est déja ca, vous allez me dire. Je cale cependant sur un autre probleme. Mon tableau aux 36000 cellules renvoient a des valeurs contenues dans des cellules de fichiers externes. Bon, ca c'est pas un probleme. Mon probleme c'est que je souhaiterai que le chemin varie en fonction du nom de l'onglet, car les onglets sont des noms de sociétés que je retrouve également dans les autres fichiers (dans d'autres répertoires, evidemment). Ainsi, le nom du fichier et l'onglet du fichier a l'interieur de ce fichier externe doit varier avec le nom de l'onglet de la feuille courante.
Ex : J'ai mon fichier toto dans le repertoire trucmuche (généré automatiquement par le code d'enregistrement) dans lequel les cellules de la feuille toto font appel aux données présentes dans la feuille toto du fichier toto du repertoire machin Lecteur reseau, Repertoire machin, sous repertoire truc, fichier Toto, onglet toto
='lecteur reseaumachintruc[toto.xls]toto'!A29
mais voila, comment faire varier le nom du fichier et le nom de la feuille en fonction de l'onglet de la feuille (ou de la valeur en "I1", au choix )?
vous allez me dire que je pourrai le faire manuellement, mais je souhaiterai a cet effet automatiser la creation de 70 fichiers identiques, dont seul le nom change.
Hmmm, je me demande si je suis tres claire quand meme.
Merci pour votre aide!!!
Valérie
michdenis
Bonjour Val,
Pour modifier une liaison spécifique, tu peux utiliser ceci en VBA
Cependant, je ne sais pas comment en vba on arrive à modifier le nom de la feuille qui est inscrit dans la liaison dans les cellules. Il y a ce petit "truc" ... après avoir modifié ta liaison..(chemin et nom du fichier), tu sélectionnes une cellule ayant cette liaison et tu ajoutes quelques caractères au nom de la feuille inscrite dans le lien... comme la liaison ne trouve pas la feuille au moment de valider, excel t'ouvre une fenêtre te permettant de choisir une des feuilles du classeur de la nouvelle liaison. À la fermeture de la fenêtre, il a valider pour toute les feuilles.
IL y a bien sûr ceci qui peut être utilisé pour modifier le nom de la feuille mais sur une très grande plage cela prendra un certain temps ! '------------------------------- Dim rg As Range Set rg = Feuil1.UsedRange.SpecialCells(xlCellTypeFormulas)
For Each c In rg c.Value = Replace(c.Formula, "Feuil2", "BDD") Next '-------------------------------
Salutations!
"Val" a écrit dans le message de news: 43160207$0$5409$ Bonjour a tous !
Je debute avec le VBA et malgré les bouquins achetés pour bachoter dans mon coin, bah je cale.. Je vous explique :
J'ai une feuille excel dans laquelle la cellule I1 permet de déterminer le nom de l'onglet, et l'evenement workbook close permet à la fermeture du fichier de générer un fichier enregistré avec le nom de l'onglet. Jusque la, ca marche. C'est déja ca, vous allez me dire. Je cale cependant sur un autre probleme. Mon tableau aux 36000 cellules renvoient a des valeurs contenues dans des cellules de fichiers externes. Bon, ca c'est pas un probleme. Mon probleme c'est que je souhaiterai que le chemin varie en fonction du nom de l'onglet, car les onglets sont des noms de sociétés que je retrouve également dans les autres fichiers (dans d'autres répertoires, evidemment). Ainsi, le nom du fichier et l'onglet du fichier a l'interieur de ce fichier externe doit varier avec le nom de l'onglet de la feuille courante.
Ex : J'ai mon fichier toto dans le repertoire trucmuche (généré automatiquement par le code d'enregistrement) dans lequel les cellules de la feuille toto font appel aux données présentes dans la feuille toto du fichier toto du repertoire machin Lecteur reseau, Repertoire machin, sous repertoire truc, fichier Toto, onglet toto
='lecteur reseaumachintruc[toto.xls]toto'!A29
mais voila, comment faire varier le nom du fichier et le nom de la feuille en fonction de l'onglet de la feuille (ou de la valeur en "I1", au choix )?
vous allez me dire que je pourrai le faire manuellement, mais je souhaiterai a cet effet automatiser la creation de 70 fichiers identiques, dont seul le nom change.
Hmmm, je me demande si je suis tres claire quand meme.
Merci pour votre aide!!!
Valérie
Bonjour Val,
Pour modifier une liaison spécifique, tu peux utiliser ceci en VBA
Cependant, je ne sais pas comment en vba on arrive à modifier le nom de la feuille qui est inscrit dans la liaison dans les
cellules. Il y a ce petit "truc" ... après avoir modifié ta liaison..(chemin et nom du fichier), tu sélectionnes une cellule ayant
cette liaison et tu ajoutes quelques caractères au nom de la feuille inscrite dans le lien... comme la liaison ne trouve pas la
feuille au moment de valider, excel t'ouvre une fenêtre te permettant de choisir une des feuilles du classeur de la nouvelle
liaison. À la fermeture de la fenêtre, il a valider pour toute les feuilles.
IL y a bien sûr ceci qui peut être utilisé pour modifier le nom de la feuille mais sur une très grande plage cela prendra un certain
temps !
'-------------------------------
Dim rg As Range
Set rg = Feuil1.UsedRange.SpecialCells(xlCellTypeFormulas)
For Each c In rg
c.Value = Replace(c.Formula, "Feuil2", "BDD")
Next
'-------------------------------
Salutations!
"Val" <valayriiie@yahoo.com> a écrit dans le message de news: 43160207$0$5409$8fcfb975@news.wanadoo.fr...
Bonjour a tous !
Je debute avec le VBA et malgré les bouquins achetés pour bachoter dans mon
coin, bah je cale..
Je vous explique :
J'ai une feuille excel dans laquelle la cellule I1 permet de déterminer le
nom de l'onglet, et l'evenement workbook close permet à la fermeture du
fichier de générer un fichier enregistré avec le nom de l'onglet.
Jusque la, ca marche. C'est déja ca, vous allez me dire.
Je cale cependant sur un autre probleme.
Mon tableau aux 36000 cellules renvoient a des valeurs contenues dans des
cellules de fichiers externes. Bon, ca c'est pas un probleme.
Mon probleme c'est que je souhaiterai que le chemin varie en fonction du nom
de l'onglet, car les onglets sont des noms de sociétés que je retrouve
également dans les autres fichiers (dans d'autres répertoires, evidemment).
Ainsi, le nom du fichier et l'onglet du fichier a l'interieur de ce fichier
externe doit varier avec le nom de l'onglet de la feuille courante.
Ex : J'ai mon fichier toto dans le repertoire trucmuche (généré
automatiquement par le code d'enregistrement) dans lequel les cellules de la
feuille toto font appel aux données présentes dans la feuille toto du
fichier toto du repertoire machin
Lecteur reseau, Repertoire machin, sous repertoire truc, fichier Toto,
onglet toto
='\lecteur reseaumachintruc[toto.xls]toto'!A29
mais voila, comment faire varier le nom du fichier et le nom de la feuille
en fonction de l'onglet de la feuille (ou de la valeur en "I1", au choix )?
vous allez me dire que je pourrai le faire manuellement, mais je souhaiterai
a cet effet automatiser la creation de 70 fichiers identiques, dont seul le
nom change.
Hmmm, je me demande si je suis tres claire quand meme.
Cependant, je ne sais pas comment en vba on arrive à modifier le nom de la feuille qui est inscrit dans la liaison dans les cellules. Il y a ce petit "truc" ... après avoir modifié ta liaison..(chemin et nom du fichier), tu sélectionnes une cellule ayant cette liaison et tu ajoutes quelques caractères au nom de la feuille inscrite dans le lien... comme la liaison ne trouve pas la feuille au moment de valider, excel t'ouvre une fenêtre te permettant de choisir une des feuilles du classeur de la nouvelle liaison. À la fermeture de la fenêtre, il a valider pour toute les feuilles.
IL y a bien sûr ceci qui peut être utilisé pour modifier le nom de la feuille mais sur une très grande plage cela prendra un certain temps ! '------------------------------- Dim rg As Range Set rg = Feuil1.UsedRange.SpecialCells(xlCellTypeFormulas)
For Each c In rg c.Value = Replace(c.Formula, "Feuil2", "BDD") Next '-------------------------------
Salutations!
"Val" a écrit dans le message de news: 43160207$0$5409$ Bonjour a tous !
Je debute avec le VBA et malgré les bouquins achetés pour bachoter dans mon coin, bah je cale.. Je vous explique :
J'ai une feuille excel dans laquelle la cellule I1 permet de déterminer le nom de l'onglet, et l'evenement workbook close permet à la fermeture du fichier de générer un fichier enregistré avec le nom de l'onglet. Jusque la, ca marche. C'est déja ca, vous allez me dire. Je cale cependant sur un autre probleme. Mon tableau aux 36000 cellules renvoient a des valeurs contenues dans des cellules de fichiers externes. Bon, ca c'est pas un probleme. Mon probleme c'est que je souhaiterai que le chemin varie en fonction du nom de l'onglet, car les onglets sont des noms de sociétés que je retrouve également dans les autres fichiers (dans d'autres répertoires, evidemment). Ainsi, le nom du fichier et l'onglet du fichier a l'interieur de ce fichier externe doit varier avec le nom de l'onglet de la feuille courante.
Ex : J'ai mon fichier toto dans le repertoire trucmuche (généré automatiquement par le code d'enregistrement) dans lequel les cellules de la feuille toto font appel aux données présentes dans la feuille toto du fichier toto du repertoire machin Lecteur reseau, Repertoire machin, sous repertoire truc, fichier Toto, onglet toto
='lecteur reseaumachintruc[toto.xls]toto'!A29
mais voila, comment faire varier le nom du fichier et le nom de la feuille en fonction de l'onglet de la feuille (ou de la valeur en "I1", au choix )?
vous allez me dire que je pourrai le faire manuellement, mais je souhaiterai a cet effet automatiser la creation de 70 fichiers identiques, dont seul le nom change.
Hmmm, je me demande si je suis tres claire quand meme.