Je t'ai déjà répondu à cette question le 5/3/2008 à 11.07 Heure du Québec.
Dans les fichiers (de 1 à 4) source de tes liaisons, utilise
ceci pour protéger la feuille de chacun des classeurs. Évidemment
pour chacun des classeurs tu devras adapter le mot de passe!
Dans le ThisWorkbook de chaque classeur source, copie cette procédure.
Si ta feuille est protégée, déprotège là... la procédure qui suit s'en
chargera.
À chaque ouverture du classeur source, la protection de la feuille
s'appliquera mais cela n'empêchera pas d'ouvrir le fichier du chef ayant
une relation avec les fichiers sources, de mettre à jour les données
sans demander le mot de passe des feuilles.
'-----------------------------------
Private Sub Workbook_Open()
Dim Sh As Worksheet
For Each Sh In Worksheets
Sh.Protect "toto", True , True , True , True
Next
End Sub
'-----------------------------------
"Mabouille" a écrit dans le message
de news:
Bonjour,
Il y a 4 collaborateurs et 4 classeurs individuels "Un", "Deux", "Trois",
"Quatre", protégés par les mot de passe "mot1", "mot2", "mot3", "mot4".
Chaque collaborateur a son classeur, et connaît donc le mot de passe pour
l'ouvrir, mais pas les autres.
Chaque classeur ne comporte qu'une feuille "Feuil1". Les feuilles ne sont
pas protégées.
Le Chef dispose d'un classeur "Cinq" sur le modèle des autres (ouverture
par
mot de passe "mot5", 1 seule feuille, non protégée).
Les classeurs Un à Quatre contiennent des données, le classeur Cinq
contient
des formules utilisant ces données. Forcément, c'est le Chef!
Mais quand le Chef ouvre Cinq pour lire les résutats figurant sur sa
feuille, la mise à jour des liaisons nécessite de taper successivement les
mots de passe des 4 classeurs sources. Le Chef connaît tous les mots de
passe
mais ça le fatigue: pas bon!
Comment mettre dans son classeur Cinq une macro qui permette,
automatiquement à son ouverture, la mise à jour de Cinq sans avoir à taper
les mots de passe des classeurs sources Un à Quatre ?
Je précise bien: il ne s'agit pas de protéger-déprotéger les feuilles, qui
n'en ont pas besoin, mais bien d'ouvrir les liaisons avec les classeurs,
et
si possible sans ouvrir les classeurs eux-mêmes.
Un seul ordinateur pour tous, PC, Windows XP, Excel 2002. Tous les
classeurs
sont dans le même répertoire "Vision".
Merci de votre aide, que bénira le Chef, (et moi !)
Mabouille
Je t'ai déjà répondu à cette question le 5/3/2008 à 11.07 Heure du Québec.
Dans les fichiers (de 1 à 4) source de tes liaisons, utilise
ceci pour protéger la feuille de chacun des classeurs. Évidemment
pour chacun des classeurs tu devras adapter le mot de passe!
Dans le ThisWorkbook de chaque classeur source, copie cette procédure.
Si ta feuille est protégée, déprotège là... la procédure qui suit s'en
chargera.
À chaque ouverture du classeur source, la protection de la feuille
s'appliquera mais cela n'empêchera pas d'ouvrir le fichier du chef ayant
une relation avec les fichiers sources, de mettre à jour les données
sans demander le mot de passe des feuilles.
'-----------------------------------
Private Sub Workbook_Open()
Dim Sh As Worksheet
For Each Sh In Worksheets
Sh.Protect "toto", True , True , True , True
Next
End Sub
'-----------------------------------
"Mabouille" <Mabouille@discussions.microsoft.com> a écrit dans le message
de news:
31747DC7-46BC-4076-B151-2BCD6F8943EC@microsoft.com...
Bonjour,
Il y a 4 collaborateurs et 4 classeurs individuels "Un", "Deux", "Trois",
"Quatre", protégés par les mot de passe "mot1", "mot2", "mot3", "mot4".
Chaque collaborateur a son classeur, et connaît donc le mot de passe pour
l'ouvrir, mais pas les autres.
Chaque classeur ne comporte qu'une feuille "Feuil1". Les feuilles ne sont
pas protégées.
Le Chef dispose d'un classeur "Cinq" sur le modèle des autres (ouverture
par
mot de passe "mot5", 1 seule feuille, non protégée).
Les classeurs Un à Quatre contiennent des données, le classeur Cinq
contient
des formules utilisant ces données. Forcément, c'est le Chef!
Mais quand le Chef ouvre Cinq pour lire les résutats figurant sur sa
feuille, la mise à jour des liaisons nécessite de taper successivement les
mots de passe des 4 classeurs sources. Le Chef connaît tous les mots de
passe
mais ça le fatigue: pas bon!
Comment mettre dans son classeur Cinq une macro qui permette,
automatiquement à son ouverture, la mise à jour de Cinq sans avoir à taper
les mots de passe des classeurs sources Un à Quatre ?
Je précise bien: il ne s'agit pas de protéger-déprotéger les feuilles, qui
n'en ont pas besoin, mais bien d'ouvrir les liaisons avec les classeurs,
et
si possible sans ouvrir les classeurs eux-mêmes.
Un seul ordinateur pour tous, PC, Windows XP, Excel 2002. Tous les
classeurs
sont dans le même répertoire "Vision".
Merci de votre aide, que bénira le Chef, (et moi !)
Mabouille
Je t'ai déjà répondu à cette question le 5/3/2008 à 11.07 Heure du Québec.
Dans les fichiers (de 1 à 4) source de tes liaisons, utilise
ceci pour protéger la feuille de chacun des classeurs. Évidemment
pour chacun des classeurs tu devras adapter le mot de passe!
Dans le ThisWorkbook de chaque classeur source, copie cette procédure.
Si ta feuille est protégée, déprotège là... la procédure qui suit s'en
chargera.
À chaque ouverture du classeur source, la protection de la feuille
s'appliquera mais cela n'empêchera pas d'ouvrir le fichier du chef ayant
une relation avec les fichiers sources, de mettre à jour les données
sans demander le mot de passe des feuilles.
'-----------------------------------
Private Sub Workbook_Open()
Dim Sh As Worksheet
For Each Sh In Worksheets
Sh.Protect "toto", True , True , True , True
Next
End Sub
'-----------------------------------
"Mabouille" a écrit dans le message
de news:
Bonjour,
Il y a 4 collaborateurs et 4 classeurs individuels "Un", "Deux", "Trois",
"Quatre", protégés par les mot de passe "mot1", "mot2", "mot3", "mot4".
Chaque collaborateur a son classeur, et connaît donc le mot de passe pour
l'ouvrir, mais pas les autres.
Chaque classeur ne comporte qu'une feuille "Feuil1". Les feuilles ne sont
pas protégées.
Le Chef dispose d'un classeur "Cinq" sur le modèle des autres (ouverture
par
mot de passe "mot5", 1 seule feuille, non protégée).
Les classeurs Un à Quatre contiennent des données, le classeur Cinq
contient
des formules utilisant ces données. Forcément, c'est le Chef!
Mais quand le Chef ouvre Cinq pour lire les résutats figurant sur sa
feuille, la mise à jour des liaisons nécessite de taper successivement les
mots de passe des 4 classeurs sources. Le Chef connaît tous les mots de
passe
mais ça le fatigue: pas bon!
Comment mettre dans son classeur Cinq une macro qui permette,
automatiquement à son ouverture, la mise à jour de Cinq sans avoir à taper
les mots de passe des classeurs sources Un à Quatre ?
Je précise bien: il ne s'agit pas de protéger-déprotéger les feuilles, qui
n'en ont pas besoin, mais bien d'ouvrir les liaisons avec les classeurs,
et
si possible sans ouvrir les classeurs eux-mêmes.
Un seul ordinateur pour tous, PC, Windows XP, Excel 2002. Tous les
classeurs
sont dans le même répertoire "Vision".
Merci de votre aide, que bénira le Chef, (et moi !)
Mabouille
Bonjour,
Merci pour cette réponse, et pour la précèdente. C'est vraiment sympa à vous
de prendre le temps de répondre, et certainement rageant d'avoir
l'impression qu'on ne vous lit pas. Ce n'est pas le cas : j'ai lu, et je
vous remercie trés sincèrement.
Cependant je suis désolé de devoir dire qu'aucune des deux réponses ne me
semble correspondre à la question posée car il n'y a pas de mot de passe
pour les feuilles dans les fichiers dont il s'agit. Or dans le code que vous
proposez et l'explication qui l'accompagne vous parlez de la protection des
feuilles, et jamais de celle des classeurs.
Quand on ouvre le fichier du chef (Cinq), Windows indique que ce fichier
comporte des liaisons avec d'autres, et demande si on veut les mettre à
jour.
Si on répond "oui" windows demande alors un par un les mots de passe qui
donnent accès aux fichiers source Un à Quatre.
C'est cette cascade de demandes que je veux contourner par une macro qui
serait dans Cinq.
Avons nous un problème de sémantique ? Quand je dis "feuille" c'est pour
les Worksheets, et là aucun mot de passe n'intervient ici, quand je dis
"fichier" ou "classeur" c'est pour les Workbooks, concernés eux par des mots
de passe.
S'il vous plaît ne vous fâchez pas contre moi si j'ai mal compris, mais
dites moi où, et comment faire ?
Cordialement
Mabouille
"MichDenis" a écrit dans le message de news:
%Je t'ai déjà répondu à cette question le 5/3/2008 à 11.07 Heure du Québec.
Dans les fichiers (de 1 à 4) source de tes liaisons, utilise
ceci pour protéger la feuille de chacun des classeurs. Évidemment
pour chacun des classeurs tu devras adapter le mot de passe!
Dans le ThisWorkbook de chaque classeur source, copie cette procédure.
Si ta feuille est protégée, déprotège là... la procédure qui suit s'en
chargera.
À chaque ouverture du classeur source, la protection de la feuille
s'appliquera mais cela n'empêchera pas d'ouvrir le fichier du chef ayant
une relation avec les fichiers sources, de mettre à jour les données
sans demander le mot de passe des feuilles.
'-----------------------------------
Private Sub Workbook_Open()
Dim Sh As Worksheet
For Each Sh In Worksheets
Sh.Protect "toto", True , True , True , True
Next
End Sub
'-----------------------------------
"Mabouille" a écrit dans le message
de news:
Bonjour,
Il y a 4 collaborateurs et 4 classeurs individuels "Un", "Deux", "Trois",
"Quatre", protégés par les mot de passe "mot1", "mot2", "mot3", "mot4".
Chaque collaborateur a son classeur, et connaît donc le mot de passe pour
l'ouvrir, mais pas les autres.
Chaque classeur ne comporte qu'une feuille "Feuil1". Les feuilles ne sont
pas protégées.
Le Chef dispose d'un classeur "Cinq" sur le modèle des autres (ouverture
par
mot de passe "mot5", 1 seule feuille, non protégée).
Les classeurs Un à Quatre contiennent des données, le classeur Cinq
contient
des formules utilisant ces données. Forcément, c'est le Chef!
Mais quand le Chef ouvre Cinq pour lire les résutats figurant sur sa
feuille, la mise à jour des liaisons nécessite de taper successivement les
mots de passe des 4 classeurs sources. Le Chef connaît tous les mots de
passe
mais ça le fatigue: pas bon!
Comment mettre dans son classeur Cinq une macro qui permette,
automatiquement à son ouverture, la mise à jour de Cinq sans avoir à taper
les mots de passe des classeurs sources Un à Quatre ?
Je précise bien: il ne s'agit pas de protéger-déprotéger les feuilles, qui
n'en ont pas besoin, mais bien d'ouvrir les liaisons avec les classeurs,
et
si possible sans ouvrir les classeurs eux-mêmes.
Un seul ordinateur pour tous, PC, Windows XP, Excel 2002. Tous les
classeurs
sont dans le même répertoire "Vision".
Merci de votre aide, que bénira le Chef, (et moi !)
Mabouille
Bonjour,
Merci pour cette réponse, et pour la précèdente. C'est vraiment sympa à vous
de prendre le temps de répondre, et certainement rageant d'avoir
l'impression qu'on ne vous lit pas. Ce n'est pas le cas : j'ai lu, et je
vous remercie trés sincèrement.
Cependant je suis désolé de devoir dire qu'aucune des deux réponses ne me
semble correspondre à la question posée car il n'y a pas de mot de passe
pour les feuilles dans les fichiers dont il s'agit. Or dans le code que vous
proposez et l'explication qui l'accompagne vous parlez de la protection des
feuilles, et jamais de celle des classeurs.
Quand on ouvre le fichier du chef (Cinq), Windows indique que ce fichier
comporte des liaisons avec d'autres, et demande si on veut les mettre à
jour.
Si on répond "oui" windows demande alors un par un les mots de passe qui
donnent accès aux fichiers source Un à Quatre.
C'est cette cascade de demandes que je veux contourner par une macro qui
serait dans Cinq.
Avons nous un problème de sémantique ? Quand je dis "feuille" c'est pour
les Worksheets, et là aucun mot de passe n'intervient ici, quand je dis
"fichier" ou "classeur" c'est pour les Workbooks, concernés eux par des mots
de passe.
S'il vous plaît ne vous fâchez pas contre moi si j'ai mal compris, mais
dites moi où, et comment faire ?
Cordialement
Mabouille
"MichDenis" <michdenis@hotmail.com> a écrit dans le message de news:
%23ETW0xJiIHA.4684@TK2MSFTNGP06.phx.gbl...
Je t'ai déjà répondu à cette question le 5/3/2008 à 11.07 Heure du Québec.
Dans les fichiers (de 1 à 4) source de tes liaisons, utilise
ceci pour protéger la feuille de chacun des classeurs. Évidemment
pour chacun des classeurs tu devras adapter le mot de passe!
Dans le ThisWorkbook de chaque classeur source, copie cette procédure.
Si ta feuille est protégée, déprotège là... la procédure qui suit s'en
chargera.
À chaque ouverture du classeur source, la protection de la feuille
s'appliquera mais cela n'empêchera pas d'ouvrir le fichier du chef ayant
une relation avec les fichiers sources, de mettre à jour les données
sans demander le mot de passe des feuilles.
'-----------------------------------
Private Sub Workbook_Open()
Dim Sh As Worksheet
For Each Sh In Worksheets
Sh.Protect "toto", True , True , True , True
Next
End Sub
'-----------------------------------
"Mabouille" <Mabouille@discussions.microsoft.com> a écrit dans le message
de news:
31747DC7-46BC-4076-B151-2BCD6F8943EC@microsoft.com...
Bonjour,
Il y a 4 collaborateurs et 4 classeurs individuels "Un", "Deux", "Trois",
"Quatre", protégés par les mot de passe "mot1", "mot2", "mot3", "mot4".
Chaque collaborateur a son classeur, et connaît donc le mot de passe pour
l'ouvrir, mais pas les autres.
Chaque classeur ne comporte qu'une feuille "Feuil1". Les feuilles ne sont
pas protégées.
Le Chef dispose d'un classeur "Cinq" sur le modèle des autres (ouverture
par
mot de passe "mot5", 1 seule feuille, non protégée).
Les classeurs Un à Quatre contiennent des données, le classeur Cinq
contient
des formules utilisant ces données. Forcément, c'est le Chef!
Mais quand le Chef ouvre Cinq pour lire les résutats figurant sur sa
feuille, la mise à jour des liaisons nécessite de taper successivement les
mots de passe des 4 classeurs sources. Le Chef connaît tous les mots de
passe
mais ça le fatigue: pas bon!
Comment mettre dans son classeur Cinq une macro qui permette,
automatiquement à son ouverture, la mise à jour de Cinq sans avoir à taper
les mots de passe des classeurs sources Un à Quatre ?
Je précise bien: il ne s'agit pas de protéger-déprotéger les feuilles, qui
n'en ont pas besoin, mais bien d'ouvrir les liaisons avec les classeurs,
et
si possible sans ouvrir les classeurs eux-mêmes.
Un seul ordinateur pour tous, PC, Windows XP, Excel 2002. Tous les
classeurs
sont dans le même répertoire "Vision".
Merci de votre aide, que bénira le Chef, (et moi !)
Mabouille
Bonjour,
Merci pour cette réponse, et pour la précèdente. C'est vraiment sympa à vous
de prendre le temps de répondre, et certainement rageant d'avoir
l'impression qu'on ne vous lit pas. Ce n'est pas le cas : j'ai lu, et je
vous remercie trés sincèrement.
Cependant je suis désolé de devoir dire qu'aucune des deux réponses ne me
semble correspondre à la question posée car il n'y a pas de mot de passe
pour les feuilles dans les fichiers dont il s'agit. Or dans le code que vous
proposez et l'explication qui l'accompagne vous parlez de la protection des
feuilles, et jamais de celle des classeurs.
Quand on ouvre le fichier du chef (Cinq), Windows indique que ce fichier
comporte des liaisons avec d'autres, et demande si on veut les mettre à
jour.
Si on répond "oui" windows demande alors un par un les mots de passe qui
donnent accès aux fichiers source Un à Quatre.
C'est cette cascade de demandes que je veux contourner par une macro qui
serait dans Cinq.
Avons nous un problème de sémantique ? Quand je dis "feuille" c'est pour
les Worksheets, et là aucun mot de passe n'intervient ici, quand je dis
"fichier" ou "classeur" c'est pour les Workbooks, concernés eux par des mots
de passe.
S'il vous plaît ne vous fâchez pas contre moi si j'ai mal compris, mais
dites moi où, et comment faire ?
Cordialement
Mabouille
"MichDenis" a écrit dans le message de news:
%Je t'ai déjà répondu à cette question le 5/3/2008 à 11.07 Heure du Québec.
Dans les fichiers (de 1 à 4) source de tes liaisons, utilise
ceci pour protéger la feuille de chacun des classeurs. Évidemment
pour chacun des classeurs tu devras adapter le mot de passe!
Dans le ThisWorkbook de chaque classeur source, copie cette procédure.
Si ta feuille est protégée, déprotège là... la procédure qui suit s'en
chargera.
À chaque ouverture du classeur source, la protection de la feuille
s'appliquera mais cela n'empêchera pas d'ouvrir le fichier du chef ayant
une relation avec les fichiers sources, de mettre à jour les données
sans demander le mot de passe des feuilles.
'-----------------------------------
Private Sub Workbook_Open()
Dim Sh As Worksheet
For Each Sh In Worksheets
Sh.Protect "toto", True , True , True , True
Next
End Sub
'-----------------------------------
"Mabouille" a écrit dans le message
de news:
Bonjour,
Il y a 4 collaborateurs et 4 classeurs individuels "Un", "Deux", "Trois",
"Quatre", protégés par les mot de passe "mot1", "mot2", "mot3", "mot4".
Chaque collaborateur a son classeur, et connaît donc le mot de passe pour
l'ouvrir, mais pas les autres.
Chaque classeur ne comporte qu'une feuille "Feuil1". Les feuilles ne sont
pas protégées.
Le Chef dispose d'un classeur "Cinq" sur le modèle des autres (ouverture
par
mot de passe "mot5", 1 seule feuille, non protégée).
Les classeurs Un à Quatre contiennent des données, le classeur Cinq
contient
des formules utilisant ces données. Forcément, c'est le Chef!
Mais quand le Chef ouvre Cinq pour lire les résutats figurant sur sa
feuille, la mise à jour des liaisons nécessite de taper successivement les
mots de passe des 4 classeurs sources. Le Chef connaît tous les mots de
passe
mais ça le fatigue: pas bon!
Comment mettre dans son classeur Cinq une macro qui permette,
automatiquement à son ouverture, la mise à jour de Cinq sans avoir à taper
les mots de passe des classeurs sources Un à Quatre ?
Je précise bien: il ne s'agit pas de protéger-déprotéger les feuilles, qui
n'en ont pas besoin, mais bien d'ouvrir les liaisons avec les classeurs,
et
si possible sans ouvrir les classeurs eux-mêmes.
Un seul ordinateur pour tous, PC, Windows XP, Excel 2002. Tous les
classeurs
sont dans le même répertoire "Vision".
Merci de votre aide, que bénira le Chef, (et moi !)
Mabouille
bonjour Mabouille,
je crois bien avoir réussi à contourner ce problème, ce n'ai pas évident
car cet événement ce produit avant l'événement workbook_Open.
et il n'y a rien de prévu au niveau des liaisons externe pour enregistrer
le mot de passe, comme il est possible de le faire
pour les requête externe (*.dsn)
c'est titer par les cheveux, mais j'ai fais plusieurs test et cela
fonctionne.
- il faut ouvrir tout les fichiers "Un", "Deux", "Trois","Quatre","cinq"
sur le fichier "cinq" selectionner au menu, Edition, Liaisons, click sur
le bouton "Invite de demarrage"
et cocher (2ème) "Ne pas afficher l'arlerte et ne pas mettre à jour les
liens automatiques"
copie cette macro sur la page code de ThisWorkBook du classeur "cinq"
il faudra adapter les noms de tes classeurs et leurs mots de passe ici les
fichier sont "zz1", "zz2" etc..
et les mot de passe sont identique au nom de chaque classeur
le fait d'ouvrir et de refermer les fichiers fait en sorte que la mise à
jour s'opère.
si la mise à jour est volumineuse, il faudra peut être mettre une pause
entre les ouverture et les fermeture.
Private Sub Workbook_Open()
Application.ScreenUpdating = False
For i = 1 To 4
Workbooks.Open "C:zazazz" & i & ".xls", , , , "zz" & i
Next
For i = 1 To 4
Workbooks("zz" & i & ".xls").Close
Next
Application.ScreenUpdating = True
End Sub
isabelleBonjour,
Merci pour cette réponse, et pour la précèdente. C'est vraiment sympa à
vous de prendre le temps de répondre, et certainement rageant d'avoir
l'impression qu'on ne vous lit pas. Ce n'est pas le cas : j'ai lu, et je
vous remercie trés sincèrement.
Cependant je suis désolé de devoir dire qu'aucune des deux réponses ne me
semble correspondre à la question posée car il n'y a pas de mot de passe
pour les feuilles dans les fichiers dont il s'agit. Or dans le code que
vous proposez et l'explication qui l'accompagne vous parlez de la
protection des feuilles, et jamais de celle des classeurs.
Quand on ouvre le fichier du chef (Cinq), Windows indique que ce fichier
comporte des liaisons avec d'autres, et demande si on veut les mettre à
jour.
Si on répond "oui" windows demande alors un par un les mots de passe qui
donnent accès aux fichiers source Un à Quatre.
C'est cette cascade de demandes que je veux contourner par une macro qui
serait dans Cinq.
Avons nous un problème de sémantique ? Quand je dis "feuille" c'est pour
les Worksheets, et là aucun mot de passe n'intervient ici, quand je dis
"fichier" ou "classeur" c'est pour les Workbooks, concernés eux par des
mots de passe.
S'il vous plaît ne vous fâchez pas contre moi si j'ai mal compris, mais
dites moi où, et comment faire ?
Cordialement
Mabouille
"MichDenis" a écrit dans le message de news:
%Je t'ai déjà répondu à cette question le 5/3/2008 à 11.07 Heure du
Québec.
Dans les fichiers (de 1 à 4) source de tes liaisons, utilise
ceci pour protéger la feuille de chacun des classeurs. Évidemment
pour chacun des classeurs tu devras adapter le mot de passe!
Dans le ThisWorkbook de chaque classeur source, copie cette procédure.
Si ta feuille est protégée, déprotège là... la procédure qui suit s'en
chargera.
À chaque ouverture du classeur source, la protection de la feuille
s'appliquera mais cela n'empêchera pas d'ouvrir le fichier du chef ayant
une relation avec les fichiers sources, de mettre à jour les données
sans demander le mot de passe des feuilles.
'-----------------------------------
Private Sub Workbook_Open()
Dim Sh As Worksheet
For Each Sh In Worksheets
Sh.Protect "toto", True , True , True , True
Next
End Sub
'-----------------------------------
"Mabouille" a écrit dans le
message de news:
Bonjour,
Il y a 4 collaborateurs et 4 classeurs individuels "Un", "Deux",
"Trois",
"Quatre", protégés par les mot de passe "mot1", "mot2", "mot3", "mot4".
Chaque collaborateur a son classeur, et connaît donc le mot de passe
pour
l'ouvrir, mais pas les autres.
Chaque classeur ne comporte qu'une feuille "Feuil1". Les feuilles ne
sont
pas protégées.
Le Chef dispose d'un classeur "Cinq" sur le modèle des autres (ouverture
par
mot de passe "mot5", 1 seule feuille, non protégée).
Les classeurs Un à Quatre contiennent des données, le classeur Cinq
contient
des formules utilisant ces données. Forcément, c'est le Chef!
Mais quand le Chef ouvre Cinq pour lire les résutats figurant sur sa
feuille, la mise à jour des liaisons nécessite de taper successivement
les
mots de passe des 4 classeurs sources. Le Chef connaît tous les mots de
passe
mais ça le fatigue: pas bon!
Comment mettre dans son classeur Cinq une macro qui permette,
automatiquement à son ouverture, la mise à jour de Cinq sans avoir à
taper
les mots de passe des classeurs sources Un à Quatre ?
Je précise bien: il ne s'agit pas de protéger-déprotéger les feuilles,
qui
n'en ont pas besoin, mais bien d'ouvrir les liaisons avec les classeurs,
et
si possible sans ouvrir les classeurs eux-mêmes.
Un seul ordinateur pour tous, PC, Windows XP, Excel 2002. Tous les
classeurs
sont dans le même répertoire "Vision".
Merci de votre aide, que bénira le Chef, (et moi !)
Mabouille
bonjour Mabouille,
je crois bien avoir réussi à contourner ce problème, ce n'ai pas évident
car cet événement ce produit avant l'événement workbook_Open.
et il n'y a rien de prévu au niveau des liaisons externe pour enregistrer
le mot de passe, comme il est possible de le faire
pour les requête externe (*.dsn)
c'est titer par les cheveux, mais j'ai fais plusieurs test et cela
fonctionne.
- il faut ouvrir tout les fichiers "Un", "Deux", "Trois","Quatre","cinq"
sur le fichier "cinq" selectionner au menu, Edition, Liaisons, click sur
le bouton "Invite de demarrage"
et cocher (2ème) "Ne pas afficher l'arlerte et ne pas mettre à jour les
liens automatiques"
copie cette macro sur la page code de ThisWorkBook du classeur "cinq"
il faudra adapter les noms de tes classeurs et leurs mots de passe ici les
fichier sont "zz1", "zz2" etc..
et les mot de passe sont identique au nom de chaque classeur
le fait d'ouvrir et de refermer les fichiers fait en sorte que la mise à
jour s'opère.
si la mise à jour est volumineuse, il faudra peut être mettre une pause
entre les ouverture et les fermeture.
Private Sub Workbook_Open()
Application.ScreenUpdating = False
For i = 1 To 4
Workbooks.Open "C:zazazz" & i & ".xls", , , , "zz" & i
Next
For i = 1 To 4
Workbooks("zz" & i & ".xls").Close
Next
Application.ScreenUpdating = True
End Sub
isabelle
Bonjour,
Merci pour cette réponse, et pour la précèdente. C'est vraiment sympa à
vous de prendre le temps de répondre, et certainement rageant d'avoir
l'impression qu'on ne vous lit pas. Ce n'est pas le cas : j'ai lu, et je
vous remercie trés sincèrement.
Cependant je suis désolé de devoir dire qu'aucune des deux réponses ne me
semble correspondre à la question posée car il n'y a pas de mot de passe
pour les feuilles dans les fichiers dont il s'agit. Or dans le code que
vous proposez et l'explication qui l'accompagne vous parlez de la
protection des feuilles, et jamais de celle des classeurs.
Quand on ouvre le fichier du chef (Cinq), Windows indique que ce fichier
comporte des liaisons avec d'autres, et demande si on veut les mettre à
jour.
Si on répond "oui" windows demande alors un par un les mots de passe qui
donnent accès aux fichiers source Un à Quatre.
C'est cette cascade de demandes que je veux contourner par une macro qui
serait dans Cinq.
Avons nous un problème de sémantique ? Quand je dis "feuille" c'est pour
les Worksheets, et là aucun mot de passe n'intervient ici, quand je dis
"fichier" ou "classeur" c'est pour les Workbooks, concernés eux par des
mots de passe.
S'il vous plaît ne vous fâchez pas contre moi si j'ai mal compris, mais
dites moi où, et comment faire ?
Cordialement
Mabouille
"MichDenis" <michdenis@hotmail.com> a écrit dans le message de news:
%23ETW0xJiIHA.4684@TK2MSFTNGP06.phx.gbl...
Je t'ai déjà répondu à cette question le 5/3/2008 à 11.07 Heure du
Québec.
Dans les fichiers (de 1 à 4) source de tes liaisons, utilise
ceci pour protéger la feuille de chacun des classeurs. Évidemment
pour chacun des classeurs tu devras adapter le mot de passe!
Dans le ThisWorkbook de chaque classeur source, copie cette procédure.
Si ta feuille est protégée, déprotège là... la procédure qui suit s'en
chargera.
À chaque ouverture du classeur source, la protection de la feuille
s'appliquera mais cela n'empêchera pas d'ouvrir le fichier du chef ayant
une relation avec les fichiers sources, de mettre à jour les données
sans demander le mot de passe des feuilles.
'-----------------------------------
Private Sub Workbook_Open()
Dim Sh As Worksheet
For Each Sh In Worksheets
Sh.Protect "toto", True , True , True , True
Next
End Sub
'-----------------------------------
"Mabouille" <Mabouille@discussions.microsoft.com> a écrit dans le
message de news:
31747DC7-46BC-4076-B151-2BCD6F8943EC@microsoft.com...
Bonjour,
Il y a 4 collaborateurs et 4 classeurs individuels "Un", "Deux",
"Trois",
"Quatre", protégés par les mot de passe "mot1", "mot2", "mot3", "mot4".
Chaque collaborateur a son classeur, et connaît donc le mot de passe
pour
l'ouvrir, mais pas les autres.
Chaque classeur ne comporte qu'une feuille "Feuil1". Les feuilles ne
sont
pas protégées.
Le Chef dispose d'un classeur "Cinq" sur le modèle des autres (ouverture
par
mot de passe "mot5", 1 seule feuille, non protégée).
Les classeurs Un à Quatre contiennent des données, le classeur Cinq
contient
des formules utilisant ces données. Forcément, c'est le Chef!
Mais quand le Chef ouvre Cinq pour lire les résutats figurant sur sa
feuille, la mise à jour des liaisons nécessite de taper successivement
les
mots de passe des 4 classeurs sources. Le Chef connaît tous les mots de
passe
mais ça le fatigue: pas bon!
Comment mettre dans son classeur Cinq une macro qui permette,
automatiquement à son ouverture, la mise à jour de Cinq sans avoir à
taper
les mots de passe des classeurs sources Un à Quatre ?
Je précise bien: il ne s'agit pas de protéger-déprotéger les feuilles,
qui
n'en ont pas besoin, mais bien d'ouvrir les liaisons avec les classeurs,
et
si possible sans ouvrir les classeurs eux-mêmes.
Un seul ordinateur pour tous, PC, Windows XP, Excel 2002. Tous les
classeurs
sont dans le même répertoire "Vision".
Merci de votre aide, que bénira le Chef, (et moi !)
Mabouille
bonjour Mabouille,
je crois bien avoir réussi à contourner ce problème, ce n'ai pas évident
car cet événement ce produit avant l'événement workbook_Open.
et il n'y a rien de prévu au niveau des liaisons externe pour enregistrer
le mot de passe, comme il est possible de le faire
pour les requête externe (*.dsn)
c'est titer par les cheveux, mais j'ai fais plusieurs test et cela
fonctionne.
- il faut ouvrir tout les fichiers "Un", "Deux", "Trois","Quatre","cinq"
sur le fichier "cinq" selectionner au menu, Edition, Liaisons, click sur
le bouton "Invite de demarrage"
et cocher (2ème) "Ne pas afficher l'arlerte et ne pas mettre à jour les
liens automatiques"
copie cette macro sur la page code de ThisWorkBook du classeur "cinq"
il faudra adapter les noms de tes classeurs et leurs mots de passe ici les
fichier sont "zz1", "zz2" etc..
et les mot de passe sont identique au nom de chaque classeur
le fait d'ouvrir et de refermer les fichiers fait en sorte que la mise à
jour s'opère.
si la mise à jour est volumineuse, il faudra peut être mettre une pause
entre les ouverture et les fermeture.
Private Sub Workbook_Open()
Application.ScreenUpdating = False
For i = 1 To 4
Workbooks.Open "C:zazazz" & i & ".xls", , , , "zz" & i
Next
For i = 1 To 4
Workbooks("zz" & i & ".xls").Close
Next
Application.ScreenUpdating = True
End Sub
isabelleBonjour,
Merci pour cette réponse, et pour la précèdente. C'est vraiment sympa à
vous de prendre le temps de répondre, et certainement rageant d'avoir
l'impression qu'on ne vous lit pas. Ce n'est pas le cas : j'ai lu, et je
vous remercie trés sincèrement.
Cependant je suis désolé de devoir dire qu'aucune des deux réponses ne me
semble correspondre à la question posée car il n'y a pas de mot de passe
pour les feuilles dans les fichiers dont il s'agit. Or dans le code que
vous proposez et l'explication qui l'accompagne vous parlez de la
protection des feuilles, et jamais de celle des classeurs.
Quand on ouvre le fichier du chef (Cinq), Windows indique que ce fichier
comporte des liaisons avec d'autres, et demande si on veut les mettre à
jour.
Si on répond "oui" windows demande alors un par un les mots de passe qui
donnent accès aux fichiers source Un à Quatre.
C'est cette cascade de demandes que je veux contourner par une macro qui
serait dans Cinq.
Avons nous un problème de sémantique ? Quand je dis "feuille" c'est pour
les Worksheets, et là aucun mot de passe n'intervient ici, quand je dis
"fichier" ou "classeur" c'est pour les Workbooks, concernés eux par des
mots de passe.
S'il vous plaît ne vous fâchez pas contre moi si j'ai mal compris, mais
dites moi où, et comment faire ?
Cordialement
Mabouille
"MichDenis" a écrit dans le message de news:
%Je t'ai déjà répondu à cette question le 5/3/2008 à 11.07 Heure du
Québec.
Dans les fichiers (de 1 à 4) source de tes liaisons, utilise
ceci pour protéger la feuille de chacun des classeurs. Évidemment
pour chacun des classeurs tu devras adapter le mot de passe!
Dans le ThisWorkbook de chaque classeur source, copie cette procédure.
Si ta feuille est protégée, déprotège là... la procédure qui suit s'en
chargera.
À chaque ouverture du classeur source, la protection de la feuille
s'appliquera mais cela n'empêchera pas d'ouvrir le fichier du chef ayant
une relation avec les fichiers sources, de mettre à jour les données
sans demander le mot de passe des feuilles.
'-----------------------------------
Private Sub Workbook_Open()
Dim Sh As Worksheet
For Each Sh In Worksheets
Sh.Protect "toto", True , True , True , True
Next
End Sub
'-----------------------------------
"Mabouille" a écrit dans le
message de news:
Bonjour,
Il y a 4 collaborateurs et 4 classeurs individuels "Un", "Deux",
"Trois",
"Quatre", protégés par les mot de passe "mot1", "mot2", "mot3", "mot4".
Chaque collaborateur a son classeur, et connaît donc le mot de passe
pour
l'ouvrir, mais pas les autres.
Chaque classeur ne comporte qu'une feuille "Feuil1". Les feuilles ne
sont
pas protégées.
Le Chef dispose d'un classeur "Cinq" sur le modèle des autres (ouverture
par
mot de passe "mot5", 1 seule feuille, non protégée).
Les classeurs Un à Quatre contiennent des données, le classeur Cinq
contient
des formules utilisant ces données. Forcément, c'est le Chef!
Mais quand le Chef ouvre Cinq pour lire les résutats figurant sur sa
feuille, la mise à jour des liaisons nécessite de taper successivement
les
mots de passe des 4 classeurs sources. Le Chef connaît tous les mots de
passe
mais ça le fatigue: pas bon!
Comment mettre dans son classeur Cinq une macro qui permette,
automatiquement à son ouverture, la mise à jour de Cinq sans avoir à
taper
les mots de passe des classeurs sources Un à Quatre ?
Je précise bien: il ne s'agit pas de protéger-déprotéger les feuilles,
qui
n'en ont pas besoin, mais bien d'ouvrir les liaisons avec les classeurs,
et
si possible sans ouvrir les classeurs eux-mêmes.
Un seul ordinateur pour tous, PC, Windows XP, Excel 2002. Tous les
classeurs
sont dans le même répertoire "Vision".
Merci de votre aide, que bénira le Chef, (et moi !)
Mabouille
bonjour Mabouille,
je crois bien avoir réussi à contourner ce problème, ce n'ai pas évident
car cet événement ce produit avant l'événement workbook_Open.
et il n'y a rien de prévu au niveau des liaisons externe pour enregistrer
le mot de passe, comme il est possible de le faire
pour les requête externe (*.dsn)
c'est titer par les cheveux, mais j'ai fais plusieurs test et cela
fonctionne.
- il faut ouvrir tout les fichiers "Un", "Deux", "Trois","Quatre","cinq"
sur le fichier "cinq" selectionner au menu, Edition, Liaisons, click sur
le bouton "Invite de demarrage"
et cocher (2ème) "Ne pas afficher l'arlerte et ne pas mettre à jour les
liens automatiques"
copie cette macro sur la page code de ThisWorkBook du classeur "cinq"
il faudra adapter les noms de tes classeurs et leurs mots de passe ici les
fichier sont "zz1", "zz2" etc..
et les mot de passe sont identique au nom de chaque classeur
le fait d'ouvrir et de refermer les fichiers fait en sorte que la mise à
jour s'opère.
si la mise à jour est volumineuse, il faudra peut être mettre une pause
entre les ouverture et les fermeture.
Private Sub Workbook_Open()
Application.ScreenUpdating = False
For i = 1 To 4
Workbooks.Open "C:zazazz" & i & ".xls", , , , "zz" & i
Next
For i = 1 To 4
Workbooks("zz" & i & ".xls").Close
Next
Application.ScreenUpdating = True
End Sub
isabelleBonjour,
Merci pour cette réponse, et pour la précèdente. C'est vraiment sympa à
vous de prendre le temps de répondre, et certainement rageant d'avoir
l'impression qu'on ne vous lit pas. Ce n'est pas le cas : j'ai lu, et je
vous remercie trés sincèrement.
Cependant je suis désolé de devoir dire qu'aucune des deux réponses ne me
semble correspondre à la question posée car il n'y a pas de mot de passe
pour les feuilles dans les fichiers dont il s'agit. Or dans le code que
vous proposez et l'explication qui l'accompagne vous parlez de la
protection des feuilles, et jamais de celle des classeurs.
Quand on ouvre le fichier du chef (Cinq), Windows indique que ce fichier
comporte des liaisons avec d'autres, et demande si on veut les mettre à
jour.
Si on répond "oui" windows demande alors un par un les mots de passe qui
donnent accès aux fichiers source Un à Quatre.
C'est cette cascade de demandes que je veux contourner par une macro qui
serait dans Cinq.
Avons nous un problème de sémantique ? Quand je dis "feuille" c'est pour
les Worksheets, et là aucun mot de passe n'intervient ici, quand je dis
"fichier" ou "classeur" c'est pour les Workbooks, concernés eux par des
mots de passe.
S'il vous plaît ne vous fâchez pas contre moi si j'ai mal compris, mais
dites moi où, et comment faire ?
Cordialement
Mabouille
"MichDenis" a écrit dans le message de news:
%Je t'ai déjà répondu à cette question le 5/3/2008 à 11.07 Heure du
Québec.
Dans les fichiers (de 1 à 4) source de tes liaisons, utilise
ceci pour protéger la feuille de chacun des classeurs. Évidemment
pour chacun des classeurs tu devras adapter le mot de passe!
Dans le ThisWorkbook de chaque classeur source, copie cette procédure.
Si ta feuille est protégée, déprotège là... la procédure qui suit s'en
chargera.
À chaque ouverture du classeur source, la protection de la feuille
s'appliquera mais cela n'empêchera pas d'ouvrir le fichier du chef ayant
une relation avec les fichiers sources, de mettre à jour les données
sans demander le mot de passe des feuilles.
'-----------------------------------
Private Sub Workbook_Open()
Dim Sh As Worksheet
For Each Sh In Worksheets
Sh.Protect "toto", True , True , True , True
Next
End Sub
'-----------------------------------
"Mabouille" a écrit dans le
message de news:
Bonjour,
Il y a 4 collaborateurs et 4 classeurs individuels "Un", "Deux",
"Trois",
"Quatre", protégés par les mot de passe "mot1", "mot2", "mot3", "mot4".
Chaque collaborateur a son classeur, et connaît donc le mot de passe
pour
l'ouvrir, mais pas les autres.
Chaque classeur ne comporte qu'une feuille "Feuil1". Les feuilles ne
sont
pas protégées.
Le Chef dispose d'un classeur "Cinq" sur le modèle des autres (ouverture
par
mot de passe "mot5", 1 seule feuille, non protégée).
Les classeurs Un à Quatre contiennent des données, le classeur Cinq
contient
des formules utilisant ces données. Forcément, c'est le Chef!
Mais quand le Chef ouvre Cinq pour lire les résutats figurant sur sa
feuille, la mise à jour des liaisons nécessite de taper successivement
les
mots de passe des 4 classeurs sources. Le Chef connaît tous les mots de
passe
mais ça le fatigue: pas bon!
Comment mettre dans son classeur Cinq une macro qui permette,
automatiquement à son ouverture, la mise à jour de Cinq sans avoir à
taper
les mots de passe des classeurs sources Un à Quatre ?
Je précise bien: il ne s'agit pas de protéger-déprotéger les feuilles,
qui
n'en ont pas besoin, mais bien d'ouvrir les liaisons avec les classeurs,
et
si possible sans ouvrir les classeurs eux-mêmes.
Un seul ordinateur pour tous, PC, Windows XP, Excel 2002. Tous les
classeurs
sont dans le même répertoire "Vision".
Merci de votre aide, que bénira le Chef, (et moi !)
Mabouille
bonjour Mabouille,
je crois bien avoir réussi à contourner ce problème, ce n'ai pas évident
car cet événement ce produit avant l'événement workbook_Open.
et il n'y a rien de prévu au niveau des liaisons externe pour enregistrer
le mot de passe, comme il est possible de le faire
pour les requête externe (*.dsn)
c'est titer par les cheveux, mais j'ai fais plusieurs test et cela
fonctionne.
- il faut ouvrir tout les fichiers "Un", "Deux", "Trois","Quatre","cinq"
sur le fichier "cinq" selectionner au menu, Edition, Liaisons, click sur
le bouton "Invite de demarrage"
et cocher (2ème) "Ne pas afficher l'arlerte et ne pas mettre à jour les
liens automatiques"
copie cette macro sur la page code de ThisWorkBook du classeur "cinq"
il faudra adapter les noms de tes classeurs et leurs mots de passe ici les
fichier sont "zz1", "zz2" etc..
et les mot de passe sont identique au nom de chaque classeur
le fait d'ouvrir et de refermer les fichiers fait en sorte que la mise à
jour s'opère.
si la mise à jour est volumineuse, il faudra peut être mettre une pause
entre les ouverture et les fermeture.
Private Sub Workbook_Open()
Application.ScreenUpdating = False
For i = 1 To 4
Workbooks.Open "C:zazazz" & i & ".xls", , , , "zz" & i
Next
For i = 1 To 4
Workbooks("zz" & i & ".xls").Close
Next
Application.ScreenUpdating = True
End Sub
isabelle
Bonjour,
Merci pour cette réponse, et pour la précèdente. C'est vraiment sympa à
vous de prendre le temps de répondre, et certainement rageant d'avoir
l'impression qu'on ne vous lit pas. Ce n'est pas le cas : j'ai lu, et je
vous remercie trés sincèrement.
Cependant je suis désolé de devoir dire qu'aucune des deux réponses ne me
semble correspondre à la question posée car il n'y a pas de mot de passe
pour les feuilles dans les fichiers dont il s'agit. Or dans le code que
vous proposez et l'explication qui l'accompagne vous parlez de la
protection des feuilles, et jamais de celle des classeurs.
Quand on ouvre le fichier du chef (Cinq), Windows indique que ce fichier
comporte des liaisons avec d'autres, et demande si on veut les mettre à
jour.
Si on répond "oui" windows demande alors un par un les mots de passe qui
donnent accès aux fichiers source Un à Quatre.
C'est cette cascade de demandes que je veux contourner par une macro qui
serait dans Cinq.
Avons nous un problème de sémantique ? Quand je dis "feuille" c'est pour
les Worksheets, et là aucun mot de passe n'intervient ici, quand je dis
"fichier" ou "classeur" c'est pour les Workbooks, concernés eux par des
mots de passe.
S'il vous plaît ne vous fâchez pas contre moi si j'ai mal compris, mais
dites moi où, et comment faire ?
Cordialement
Mabouille
"MichDenis" <michdenis@hotmail.com> a écrit dans le message de news:
%23ETW0xJiIHA.4684@TK2MSFTNGP06.phx.gbl...
Je t'ai déjà répondu à cette question le 5/3/2008 à 11.07 Heure du
Québec.
Dans les fichiers (de 1 à 4) source de tes liaisons, utilise
ceci pour protéger la feuille de chacun des classeurs. Évidemment
pour chacun des classeurs tu devras adapter le mot de passe!
Dans le ThisWorkbook de chaque classeur source, copie cette procédure.
Si ta feuille est protégée, déprotège là... la procédure qui suit s'en
chargera.
À chaque ouverture du classeur source, la protection de la feuille
s'appliquera mais cela n'empêchera pas d'ouvrir le fichier du chef ayant
une relation avec les fichiers sources, de mettre à jour les données
sans demander le mot de passe des feuilles.
'-----------------------------------
Private Sub Workbook_Open()
Dim Sh As Worksheet
For Each Sh In Worksheets
Sh.Protect "toto", True , True , True , True
Next
End Sub
'-----------------------------------
"Mabouille" <Mabouille@discussions.microsoft.com> a écrit dans le
message de news:
31747DC7-46BC-4076-B151-2BCD6F8943EC@microsoft.com...
Bonjour,
Il y a 4 collaborateurs et 4 classeurs individuels "Un", "Deux",
"Trois",
"Quatre", protégés par les mot de passe "mot1", "mot2", "mot3", "mot4".
Chaque collaborateur a son classeur, et connaît donc le mot de passe
pour
l'ouvrir, mais pas les autres.
Chaque classeur ne comporte qu'une feuille "Feuil1". Les feuilles ne
sont
pas protégées.
Le Chef dispose d'un classeur "Cinq" sur le modèle des autres (ouverture
par
mot de passe "mot5", 1 seule feuille, non protégée).
Les classeurs Un à Quatre contiennent des données, le classeur Cinq
contient
des formules utilisant ces données. Forcément, c'est le Chef!
Mais quand le Chef ouvre Cinq pour lire les résutats figurant sur sa
feuille, la mise à jour des liaisons nécessite de taper successivement
les
mots de passe des 4 classeurs sources. Le Chef connaît tous les mots de
passe
mais ça le fatigue: pas bon!
Comment mettre dans son classeur Cinq une macro qui permette,
automatiquement à son ouverture, la mise à jour de Cinq sans avoir à
taper
les mots de passe des classeurs sources Un à Quatre ?
Je précise bien: il ne s'agit pas de protéger-déprotéger les feuilles,
qui
n'en ont pas besoin, mais bien d'ouvrir les liaisons avec les classeurs,
et
si possible sans ouvrir les classeurs eux-mêmes.
Un seul ordinateur pour tous, PC, Windows XP, Excel 2002. Tous les
classeurs
sont dans le même répertoire "Vision".
Merci de votre aide, que bénira le Chef, (et moi !)
Mabouille
bonjour Mabouille,
je crois bien avoir réussi à contourner ce problème, ce n'ai pas évident
car cet événement ce produit avant l'événement workbook_Open.
et il n'y a rien de prévu au niveau des liaisons externe pour enregistrer
le mot de passe, comme il est possible de le faire
pour les requête externe (*.dsn)
c'est titer par les cheveux, mais j'ai fais plusieurs test et cela
fonctionne.
- il faut ouvrir tout les fichiers "Un", "Deux", "Trois","Quatre","cinq"
sur le fichier "cinq" selectionner au menu, Edition, Liaisons, click sur
le bouton "Invite de demarrage"
et cocher (2ème) "Ne pas afficher l'arlerte et ne pas mettre à jour les
liens automatiques"
copie cette macro sur la page code de ThisWorkBook du classeur "cinq"
il faudra adapter les noms de tes classeurs et leurs mots de passe ici les
fichier sont "zz1", "zz2" etc..
et les mot de passe sont identique au nom de chaque classeur
le fait d'ouvrir et de refermer les fichiers fait en sorte que la mise à
jour s'opère.
si la mise à jour est volumineuse, il faudra peut être mettre une pause
entre les ouverture et les fermeture.
Private Sub Workbook_Open()
Application.ScreenUpdating = False
For i = 1 To 4
Workbooks.Open "C:zazazz" & i & ".xls", , , , "zz" & i
Next
For i = 1 To 4
Workbooks("zz" & i & ".xls").Close
Next
Application.ScreenUpdating = True
End Sub
isabelleBonjour,
Merci pour cette réponse, et pour la précèdente. C'est vraiment sympa à
vous de prendre le temps de répondre, et certainement rageant d'avoir
l'impression qu'on ne vous lit pas. Ce n'est pas le cas : j'ai lu, et je
vous remercie trés sincèrement.
Cependant je suis désolé de devoir dire qu'aucune des deux réponses ne me
semble correspondre à la question posée car il n'y a pas de mot de passe
pour les feuilles dans les fichiers dont il s'agit. Or dans le code que
vous proposez et l'explication qui l'accompagne vous parlez de la
protection des feuilles, et jamais de celle des classeurs.
Quand on ouvre le fichier du chef (Cinq), Windows indique que ce fichier
comporte des liaisons avec d'autres, et demande si on veut les mettre à
jour.
Si on répond "oui" windows demande alors un par un les mots de passe qui
donnent accès aux fichiers source Un à Quatre.
C'est cette cascade de demandes que je veux contourner par une macro qui
serait dans Cinq.
Avons nous un problème de sémantique ? Quand je dis "feuille" c'est pour
les Worksheets, et là aucun mot de passe n'intervient ici, quand je dis
"fichier" ou "classeur" c'est pour les Workbooks, concernés eux par des
mots de passe.
S'il vous plaît ne vous fâchez pas contre moi si j'ai mal compris, mais
dites moi où, et comment faire ?
Cordialement
Mabouille
"MichDenis" a écrit dans le message de news:
%Je t'ai déjà répondu à cette question le 5/3/2008 à 11.07 Heure du
Québec.
Dans les fichiers (de 1 à 4) source de tes liaisons, utilise
ceci pour protéger la feuille de chacun des classeurs. Évidemment
pour chacun des classeurs tu devras adapter le mot de passe!
Dans le ThisWorkbook de chaque classeur source, copie cette procédure.
Si ta feuille est protégée, déprotège là... la procédure qui suit s'en
chargera.
À chaque ouverture du classeur source, la protection de la feuille
s'appliquera mais cela n'empêchera pas d'ouvrir le fichier du chef ayant
une relation avec les fichiers sources, de mettre à jour les données
sans demander le mot de passe des feuilles.
'-----------------------------------
Private Sub Workbook_Open()
Dim Sh As Worksheet
For Each Sh In Worksheets
Sh.Protect "toto", True , True , True , True
Next
End Sub
'-----------------------------------
"Mabouille" a écrit dans le
message de news:
Bonjour,
Il y a 4 collaborateurs et 4 classeurs individuels "Un", "Deux",
"Trois",
"Quatre", protégés par les mot de passe "mot1", "mot2", "mot3", "mot4".
Chaque collaborateur a son classeur, et connaît donc le mot de passe
pour
l'ouvrir, mais pas les autres.
Chaque classeur ne comporte qu'une feuille "Feuil1". Les feuilles ne
sont
pas protégées.
Le Chef dispose d'un classeur "Cinq" sur le modèle des autres (ouverture
par
mot de passe "mot5", 1 seule feuille, non protégée).
Les classeurs Un à Quatre contiennent des données, le classeur Cinq
contient
des formules utilisant ces données. Forcément, c'est le Chef!
Mais quand le Chef ouvre Cinq pour lire les résutats figurant sur sa
feuille, la mise à jour des liaisons nécessite de taper successivement
les
mots de passe des 4 classeurs sources. Le Chef connaît tous les mots de
passe
mais ça le fatigue: pas bon!
Comment mettre dans son classeur Cinq une macro qui permette,
automatiquement à son ouverture, la mise à jour de Cinq sans avoir à
taper
les mots de passe des classeurs sources Un à Quatre ?
Je précise bien: il ne s'agit pas de protéger-déprotéger les feuilles,
qui
n'en ont pas besoin, mais bien d'ouvrir les liaisons avec les classeurs,
et
si possible sans ouvrir les classeurs eux-mêmes.
Un seul ordinateur pour tous, PC, Windows XP, Excel 2002. Tous les
classeurs
sont dans le même répertoire "Vision".
Merci de votre aide, que bénira le Chef, (et moi !)
Mabouille
Bonjour,
Il y a 4 collaborateurs et 4 classeurs individuels "Un", "Deux", "Trois",
"Quatre", protégés par les mot de passe "mot1", "mot2", "mot3", "mot4".
Chaque collaborateur a son classeur, et connaît donc le mot de passe pour
l'ouvrir, mais pas les autres.
Chaque classeur ne comporte qu'une feuille "Feuil1". Les feuilles ne sont
pas protégées.
Le Chef dispose d'un classeur "Cinq" sur le modèle des autres (ouverture par
mot de passe "mot5", 1 seule feuille, non protégée).
Les classeurs Un à Quatre contiennent des données, le classeur Cinq contient
des formules utilisant ces données. Forcément, c'est le Chef!
Mais quand le Chef ouvre Cinq pour lire les résutats figurant sur sa
feuille, la mise à jour des liaisons nécessite de taper successivement les
mots de passe des 4 classeurs sources. Le Chef connaît tous les mots de passe
mais ça le fatigue: pas bon!
Comment mettre dans son classeur Cinq une macro qui permette,
automatiquement à son ouverture, la mise à jour de Cinq sans avoir à taper
les mots de passe des classeurs sources Un à Quatre ?
Je précise bien: il ne s'agit pas de protéger-déprotéger les feuilles, qui
n'en ont pas besoin, mais bien d'ouvrir les liaisons avec les classeurs, et
si possible sans ouvrir les classeurs eux-mêmes.
Un seul ordinateur pour tous, PC, Windows XP, Excel 2002. Tous les classeurs
sont dans le même répertoire "Vision".
Merci de votre aide, que bénira le Chef, (et moi !)
Mabouille
Bonjour,
Il y a 4 collaborateurs et 4 classeurs individuels "Un", "Deux", "Trois",
"Quatre", protégés par les mot de passe "mot1", "mot2", "mot3", "mot4".
Chaque collaborateur a son classeur, et connaît donc le mot de passe pour
l'ouvrir, mais pas les autres.
Chaque classeur ne comporte qu'une feuille "Feuil1". Les feuilles ne sont
pas protégées.
Le Chef dispose d'un classeur "Cinq" sur le modèle des autres (ouverture par
mot de passe "mot5", 1 seule feuille, non protégée).
Les classeurs Un à Quatre contiennent des données, le classeur Cinq contient
des formules utilisant ces données. Forcément, c'est le Chef!
Mais quand le Chef ouvre Cinq pour lire les résutats figurant sur sa
feuille, la mise à jour des liaisons nécessite de taper successivement les
mots de passe des 4 classeurs sources. Le Chef connaît tous les mots de passe
mais ça le fatigue: pas bon!
Comment mettre dans son classeur Cinq une macro qui permette,
automatiquement à son ouverture, la mise à jour de Cinq sans avoir à taper
les mots de passe des classeurs sources Un à Quatre ?
Je précise bien: il ne s'agit pas de protéger-déprotéger les feuilles, qui
n'en ont pas besoin, mais bien d'ouvrir les liaisons avec les classeurs, et
si possible sans ouvrir les classeurs eux-mêmes.
Un seul ordinateur pour tous, PC, Windows XP, Excel 2002. Tous les classeurs
sont dans le même répertoire "Vision".
Merci de votre aide, que bénira le Chef, (et moi !)
Mabouille
Bonjour,
Il y a 4 collaborateurs et 4 classeurs individuels "Un", "Deux", "Trois",
"Quatre", protégés par les mot de passe "mot1", "mot2", "mot3", "mot4".
Chaque collaborateur a son classeur, et connaît donc le mot de passe pour
l'ouvrir, mais pas les autres.
Chaque classeur ne comporte qu'une feuille "Feuil1". Les feuilles ne sont
pas protégées.
Le Chef dispose d'un classeur "Cinq" sur le modèle des autres (ouverture par
mot de passe "mot5", 1 seule feuille, non protégée).
Les classeurs Un à Quatre contiennent des données, le classeur Cinq contient
des formules utilisant ces données. Forcément, c'est le Chef!
Mais quand le Chef ouvre Cinq pour lire les résutats figurant sur sa
feuille, la mise à jour des liaisons nécessite de taper successivement les
mots de passe des 4 classeurs sources. Le Chef connaît tous les mots de passe
mais ça le fatigue: pas bon!
Comment mettre dans son classeur Cinq une macro qui permette,
automatiquement à son ouverture, la mise à jour de Cinq sans avoir à taper
les mots de passe des classeurs sources Un à Quatre ?
Je précise bien: il ne s'agit pas de protéger-déprotéger les feuilles, qui
n'en ont pas besoin, mais bien d'ouvrir les liaisons avec les classeurs, et
si possible sans ouvrir les classeurs eux-mêmes.
Un seul ordinateur pour tous, PC, Windows XP, Excel 2002. Tous les classeurs
sont dans le même répertoire "Vision".
Merci de votre aide, que bénira le Chef, (et moi !)
Mabouille
bonjour Philippe,
=SI(B2="H";INDEX($H$1:$H$7;EQUIV(C2;$G$1:$G$7;0));INDEX($I$1:$I$7;EQUIV(C2;$G$1:$G$7;0)))
isabelleBonjour,
Il y a 4 collaborateurs et 4 classeurs individuels "Un", "Deux", "Trois",
"Quatre", protégés par les mot de passe "mot1", "mot2", "mot3", "mot4".
Chaque collaborateur a son classeur, et connaît donc le mot de passe pour
l'ouvrir, mais pas les autres.
Chaque classeur ne comporte qu'une feuille "Feuil1". Les feuilles ne sont
pas protégées.
Le Chef dispose d'un classeur "Cinq" sur le modèle des autres (ouverture
par mot de passe "mot5", 1 seule feuille, non protégée).
Les classeurs Un à Quatre contiennent des données, le classeur Cinq
contient des formules utilisant ces données. Forcément, c'est le Chef!
Mais quand le Chef ouvre Cinq pour lire les résutats figurant sur sa
feuille, la mise à jour des liaisons nécessite de taper successivement
les mots de passe des 4 classeurs sources. Le Chef connaît tous les mots
de passe mais ça le fatigue: pas bon!
Comment mettre dans son classeur Cinq une macro qui permette,
automatiquement à son ouverture, la mise à jour de Cinq sans avoir à
taper les mots de passe des classeurs sources Un à Quatre ?
Je précise bien: il ne s'agit pas de protéger-déprotéger les feuilles,
qui n'en ont pas besoin, mais bien d'ouvrir les liaisons avec les
classeurs, et si possible sans ouvrir les classeurs eux-mêmes.
Un seul ordinateur pour tous, PC, Windows XP, Excel 2002. Tous les
classeurs sont dans le même répertoire "Vision".
Merci de votre aide, que bénira le Chef, (et moi !)
Mabouille
bonjour Philippe,
=SI(B2="H";INDEX($H$1:$H$7;EQUIV(C2;$G$1:$G$7;0));INDEX($I$1:$I$7;EQUIV(C2;$G$1:$G$7;0)))
isabelle
Bonjour,
Il y a 4 collaborateurs et 4 classeurs individuels "Un", "Deux", "Trois",
"Quatre", protégés par les mot de passe "mot1", "mot2", "mot3", "mot4".
Chaque collaborateur a son classeur, et connaît donc le mot de passe pour
l'ouvrir, mais pas les autres.
Chaque classeur ne comporte qu'une feuille "Feuil1". Les feuilles ne sont
pas protégées.
Le Chef dispose d'un classeur "Cinq" sur le modèle des autres (ouverture
par mot de passe "mot5", 1 seule feuille, non protégée).
Les classeurs Un à Quatre contiennent des données, le classeur Cinq
contient des formules utilisant ces données. Forcément, c'est le Chef!
Mais quand le Chef ouvre Cinq pour lire les résutats figurant sur sa
feuille, la mise à jour des liaisons nécessite de taper successivement
les mots de passe des 4 classeurs sources. Le Chef connaît tous les mots
de passe mais ça le fatigue: pas bon!
Comment mettre dans son classeur Cinq une macro qui permette,
automatiquement à son ouverture, la mise à jour de Cinq sans avoir à
taper les mots de passe des classeurs sources Un à Quatre ?
Je précise bien: il ne s'agit pas de protéger-déprotéger les feuilles,
qui n'en ont pas besoin, mais bien d'ouvrir les liaisons avec les
classeurs, et si possible sans ouvrir les classeurs eux-mêmes.
Un seul ordinateur pour tous, PC, Windows XP, Excel 2002. Tous les
classeurs sont dans le même répertoire "Vision".
Merci de votre aide, que bénira le Chef, (et moi !)
Mabouille
bonjour Philippe,
=SI(B2="H";INDEX($H$1:$H$7;EQUIV(C2;$G$1:$G$7;0));INDEX($I$1:$I$7;EQUIV(C2;$G$1:$G$7;0)))
isabelleBonjour,
Il y a 4 collaborateurs et 4 classeurs individuels "Un", "Deux", "Trois",
"Quatre", protégés par les mot de passe "mot1", "mot2", "mot3", "mot4".
Chaque collaborateur a son classeur, et connaît donc le mot de passe pour
l'ouvrir, mais pas les autres.
Chaque classeur ne comporte qu'une feuille "Feuil1". Les feuilles ne sont
pas protégées.
Le Chef dispose d'un classeur "Cinq" sur le modèle des autres (ouverture
par mot de passe "mot5", 1 seule feuille, non protégée).
Les classeurs Un à Quatre contiennent des données, le classeur Cinq
contient des formules utilisant ces données. Forcément, c'est le Chef!
Mais quand le Chef ouvre Cinq pour lire les résutats figurant sur sa
feuille, la mise à jour des liaisons nécessite de taper successivement
les mots de passe des 4 classeurs sources. Le Chef connaît tous les mots
de passe mais ça le fatigue: pas bon!
Comment mettre dans son classeur Cinq une macro qui permette,
automatiquement à son ouverture, la mise à jour de Cinq sans avoir à
taper les mots de passe des classeurs sources Un à Quatre ?
Je précise bien: il ne s'agit pas de protéger-déprotéger les feuilles,
qui n'en ont pas besoin, mais bien d'ouvrir les liaisons avec les
classeurs, et si possible sans ouvrir les classeurs eux-mêmes.
Un seul ordinateur pour tous, PC, Windows XP, Excel 2002. Tous les
classeurs sont dans le même répertoire "Vision".
Merci de votre aide, que bénira le Chef, (et moi !)
Mabouille
Bonjour Isabelle,
Je crains que tu ne te sois trompée de fil, je ne suis pas Philippe, celui
ci n'a donc pas du avoir ta solution, je te le signale pour lui mais je ne
sais pas quel est son fil.
Cordialement
Mabouille
"isabelle" a écrit dans le message de news:bonjour Philippe,
=SI(B2="H";INDEX($H$1:$H$7;EQUIV(C2;$G$1:$G$7;0));INDEX($I$1:$I$7;EQUIV(C2;$G$1:$G$7;0)))
isabelleBonjour,
Il y a 4 collaborateurs et 4 classeurs individuels "Un", "Deux", "Trois",
"Quatre", protégés par les mot de passe "mot1", "mot2", "mot3", "mot4".
Chaque collaborateur a son classeur, et connaît donc le mot de passe pour
l'ouvrir, mais pas les autres.
Chaque classeur ne comporte qu'une feuille "Feuil1". Les feuilles ne sont
pas protégées.
Le Chef dispose d'un classeur "Cinq" sur le modèle des autres (ouverture
par mot de passe "mot5", 1 seule feuille, non protégée).
Les classeurs Un à Quatre contiennent des données, le classeur Cinq
contient des formules utilisant ces données. Forcément, c'est le Chef!
Mais quand le Chef ouvre Cinq pour lire les résutats figurant sur sa
feuille, la mise à jour des liaisons nécessite de taper successivement
les mots de passe des 4 classeurs sources. Le Chef connaît tous les mots
de passe mais ça le fatigue: pas bon!
Comment mettre dans son classeur Cinq une macro qui permette,
automatiquement à son ouverture, la mise à jour de Cinq sans avoir à
taper les mots de passe des classeurs sources Un à Quatre ?
Je précise bien: il ne s'agit pas de protéger-déprotéger les feuilles,
qui n'en ont pas besoin, mais bien d'ouvrir les liaisons avec les
classeurs, et si possible sans ouvrir les classeurs eux-mêmes.
Un seul ordinateur pour tous, PC, Windows XP, Excel 2002. Tous les
classeurs sont dans le même répertoire "Vision".
Merci de votre aide, que bénira le Chef, (et moi !)
Mabouille
Bonjour Isabelle,
Je crains que tu ne te sois trompée de fil, je ne suis pas Philippe, celui
ci n'a donc pas du avoir ta solution, je te le signale pour lui mais je ne
sais pas quel est son fil.
Cordialement
Mabouille
"isabelle" <i@v> a écrit dans le message de news:
OcNv5IfiIHA.4868@TK2MSFTNGP03.phx.gbl...
bonjour Philippe,
=SI(B2="H";INDEX($H$1:$H$7;EQUIV(C2;$G$1:$G$7;0));INDEX($I$1:$I$7;EQUIV(C2;$G$1:$G$7;0)))
isabelle
Bonjour,
Il y a 4 collaborateurs et 4 classeurs individuels "Un", "Deux", "Trois",
"Quatre", protégés par les mot de passe "mot1", "mot2", "mot3", "mot4".
Chaque collaborateur a son classeur, et connaît donc le mot de passe pour
l'ouvrir, mais pas les autres.
Chaque classeur ne comporte qu'une feuille "Feuil1". Les feuilles ne sont
pas protégées.
Le Chef dispose d'un classeur "Cinq" sur le modèle des autres (ouverture
par mot de passe "mot5", 1 seule feuille, non protégée).
Les classeurs Un à Quatre contiennent des données, le classeur Cinq
contient des formules utilisant ces données. Forcément, c'est le Chef!
Mais quand le Chef ouvre Cinq pour lire les résutats figurant sur sa
feuille, la mise à jour des liaisons nécessite de taper successivement
les mots de passe des 4 classeurs sources. Le Chef connaît tous les mots
de passe mais ça le fatigue: pas bon!
Comment mettre dans son classeur Cinq une macro qui permette,
automatiquement à son ouverture, la mise à jour de Cinq sans avoir à
taper les mots de passe des classeurs sources Un à Quatre ?
Je précise bien: il ne s'agit pas de protéger-déprotéger les feuilles,
qui n'en ont pas besoin, mais bien d'ouvrir les liaisons avec les
classeurs, et si possible sans ouvrir les classeurs eux-mêmes.
Un seul ordinateur pour tous, PC, Windows XP, Excel 2002. Tous les
classeurs sont dans le même répertoire "Vision".
Merci de votre aide, que bénira le Chef, (et moi !)
Mabouille
Bonjour Isabelle,
Je crains que tu ne te sois trompée de fil, je ne suis pas Philippe, celui
ci n'a donc pas du avoir ta solution, je te le signale pour lui mais je ne
sais pas quel est son fil.
Cordialement
Mabouille
"isabelle" a écrit dans le message de news:bonjour Philippe,
=SI(B2="H";INDEX($H$1:$H$7;EQUIV(C2;$G$1:$G$7;0));INDEX($I$1:$I$7;EQUIV(C2;$G$1:$G$7;0)))
isabelleBonjour,
Il y a 4 collaborateurs et 4 classeurs individuels "Un", "Deux", "Trois",
"Quatre", protégés par les mot de passe "mot1", "mot2", "mot3", "mot4".
Chaque collaborateur a son classeur, et connaît donc le mot de passe pour
l'ouvrir, mais pas les autres.
Chaque classeur ne comporte qu'une feuille "Feuil1". Les feuilles ne sont
pas protégées.
Le Chef dispose d'un classeur "Cinq" sur le modèle des autres (ouverture
par mot de passe "mot5", 1 seule feuille, non protégée).
Les classeurs Un à Quatre contiennent des données, le classeur Cinq
contient des formules utilisant ces données. Forcément, c'est le Chef!
Mais quand le Chef ouvre Cinq pour lire les résutats figurant sur sa
feuille, la mise à jour des liaisons nécessite de taper successivement
les mots de passe des 4 classeurs sources. Le Chef connaît tous les mots
de passe mais ça le fatigue: pas bon!
Comment mettre dans son classeur Cinq une macro qui permette,
automatiquement à son ouverture, la mise à jour de Cinq sans avoir à
taper les mots de passe des classeurs sources Un à Quatre ?
Je précise bien: il ne s'agit pas de protéger-déprotéger les feuilles,
qui n'en ont pas besoin, mais bien d'ouvrir les liaisons avec les
classeurs, et si possible sans ouvrir les classeurs eux-mêmes.
Un seul ordinateur pour tous, PC, Windows XP, Excel 2002. Tous les
classeurs sont dans le même répertoire "Vision".
Merci de votre aide, que bénira le Chef, (et moi !)
Mabouille