J'utilise Excel 2002 à la maison comme au travail. J'ai des lignes de codes
qui fonctionnent de façon erratique selon le PC sur lequel elles sont
exécutées. Au travail je suis en réseau, sur mon PC tout fonctionne bien,
mais sur certains PC du réseau (tous les PC ont la même version), la
procédure échoue.
Voici les codes :
Workbooks.Open "F:\TOTO\" & periode, , True
'periode & ".xls" n'est pas utile à l'ouverture. VBA ouvre sans avoir besoin
de ".xls".Alors pourquoi dans les instructions suivantes ".xls" est-il
obligatoire ?
If Dir("F:\TOTO\" & periode & ".xls") <> "" Then
' avec Dir par contre ".xls" est obligatoire, je l'avais remarqué mais je
n'en connais pas la raison exacte.
Par contre les deux codes qui posent problèmes sont les suivants :
Workbooks(periode).Activate
Le classeur déjà ouvert n'était pas activé.
Workbooks(periode).Close False
Le classeur ouvert et activé (après correction de l'instruction Activate
grâce à l'ajout de ".xls") ne se fermait pas.
J'ai donc dû au fur et à mesure du débogage rajouter aux deux instructions
le fameux ".xls". Après tout est correct.
Workbooks(periode & ".xls").Activate
Workbooks(periode & ".xls").Close False
Quelqu'un a-t-il une explication à cet étrange phénomène? Pourquoi sur mes
deux PC (maison et bureau) tout fonctionne sans ".xls" et pourquoi sur
d'autres PC (au bureau avec même version 2002) il faut obligatoirement ce
".xls"?
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
Clément Marcotte
Bonjour,
If Dir("F:TOTO" & periode & ".xls") <> "" Then ' avec Dir par contre ".xls" est obligatoire, je l'avais remarqué mais je n'en connais pas la raison exacte.
Parce que rien ne t'empêche d'avoir toto.xls, toto.txt, toto.doc etc.
Bonjour,
If Dir("F:TOTO" & periode & ".xls") <> "" Then
' avec Dir par contre ".xls" est obligatoire, je l'avais remarqué mais je
n'en connais pas la raison exacte.
Parce que rien ne t'empêche d'avoir toto.xls, toto.txt, toto.doc etc.
If Dir("F:TOTO" & periode & ".xls") <> "" Then ' avec Dir par contre ".xls" est obligatoire, je l'avais remarqué mais je n'en connais pas la raison exacte.
Parce que rien ne t'empêche d'avoir toto.xls, toto.txt, toto.doc etc.
khinoa
Bonjour Clément,
Parce que rien ne t'empêche d'avoir toto.xls, toto.txt, toto.doc etc.
Oui d'accord avec Dir mais pour Activate et Close ? Pourquoi ".xls" est tantôt obligatoire et tantôt facultatif selon les PC qui exécutent le code ?
D'avance merci pour la réponse
khinoa
Bonjour Clément,
Parce que rien ne t'empêche d'avoir toto.xls, toto.txt, toto.doc etc.
Oui d'accord avec Dir mais pour Activate et Close ? Pourquoi ".xls" est
tantôt obligatoire et tantôt facultatif selon les PC qui exécutent le code ?
Parce que rien ne t'empêche d'avoir toto.xls, toto.txt, toto.doc etc.
Oui d'accord avec Dir mais pour Activate et Close ? Pourquoi ".xls" est tantôt obligatoire et tantôt facultatif selon les PC qui exécutent le code ?
D'avance merci pour la réponse
khinoa
anonymousA
Bonjour,
Si dans l'Explorateur de Windows (Outils/Options des dossiers/Affichage), tu coches la case "Masquer les extensions des fichiers dont le type est connu", alors tu n'auras pas de plantage sans donner l'extension. Si cette case n'est pas cochée, alors tu auras un plantage. Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner d'extension, si un fichier Excel dans le répertoire précis que tu désignes porte le nom en question, workbooks.open ouvrira le fichier même si tu ne précises pas l'extension.
A+
Bonjour Clément,
Parce que rien ne t'empêche d'avoir toto.xls, toto.txt, toto.doc etc.
Oui d'accord avec Dir mais pour Activate et Close ? Pourquoi ".xls" est tantôt obligatoire et tantôt facultatif selon les PC qui exécutent le code ?
D'avance merci pour la réponse
khinoa
Bonjour,
Si dans l'Explorateur de Windows (Outils/Options des
dossiers/Affichage), tu coches la case "Masquer les extensions des
fichiers dont le type est connu", alors tu n'auras pas de plantage sans
donner l'extension. Si cette case n'est pas cochée, alors tu auras un
plantage.
Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun
d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner
d'extension, si un fichier Excel dans le répertoire précis que tu
désignes porte le nom en question, workbooks.open ouvrira le fichier
même si tu ne précises pas l'extension.
A+
Bonjour Clément,
Parce que rien ne t'empêche d'avoir toto.xls, toto.txt, toto.doc etc.
Oui d'accord avec Dir mais pour Activate et Close ? Pourquoi ".xls" est
tantôt obligatoire et tantôt facultatif selon les PC qui exécutent le code ?
Si dans l'Explorateur de Windows (Outils/Options des dossiers/Affichage), tu coches la case "Masquer les extensions des fichiers dont le type est connu", alors tu n'auras pas de plantage sans donner l'extension. Si cette case n'est pas cochée, alors tu auras un plantage. Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner d'extension, si un fichier Excel dans le répertoire précis que tu désignes porte le nom en question, workbooks.open ouvrira le fichier même si tu ne précises pas l'extension.
A+
Bonjour Clément,
Parce que rien ne t'empêche d'avoir toto.xls, toto.txt, toto.doc etc.
Oui d'accord avec Dir mais pour Activate et Close ? Pourquoi ".xls" est tantôt obligatoire et tantôt facultatif selon les PC qui exécutent le code ?
D'avance merci pour la réponse
khinoa
khinoa
Bonjour anonymousA,
Si dans l'Explorateur de Windows (Outils/Options des dossiers/Affichage), tu coches la case "Masquer les extensions des fichiers dont le type est connu", alors tu n'auras pas de plantage sans donner l'extension. Si cette case n'est pas cochée, alors tu auras un plantage.
Je te remercie de ta réponse. Imagine-toi que j'avais pensé à cette option car personnellement je masque toujours sur les PC que j'utilise les extensions dont le type est connu. Mais je pensais que si masquer à l'affichage n'empêchait pas Excel de reconnaître un fichier ".xls" a fortiori en l'affichant cela fonctionnerait car masqué ne veut pas dire pourtant supprimé ou absent. Mais je comprends avec tes explications qu'en fait Excel réagit différemment de ce que je pensais.
Alors comme il me paraît plus compliqué ou fastidieux de demander à tous les utilisateurs différents de masquer les extensions, je vais donc rajouter le ".xls" dans le code pour les Activate et Close.
Certes pour le Close et pour éviter l'ajout de ".xls" je peux remplacer Workbooks(periode & ".xls").Close par le code suivant mais le code est forcément plus long :
For Each w In Workbooks If w.Name <> ThisWorkbook.Name Then w.Close False End If Next
mais comme parfois j'ai trois classeurs ouverts en même temps qui communiquent entre eux, le code ainsi conçu m'en fermerait deux soit un de trop. A moins d'écrire :
If w.Name <> ThisWorkbook.Name and w.Name <> variable Then
variable étant le nom d'un des trois classeurs dont le nom sera récupéré à son ouverture et qui devra rester ouvert.
Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner d'extension, si un fichier Excel dans le répertoire précis que tu désignes porte le nom en question, workbooks.open ouvrira le fichier même si tu ne précises pas l'extension.
Pour Workbooks.Open j'ai compris et merci encore pour tout
khinoa
Bonjour anonymousA,
Si dans l'Explorateur de Windows (Outils/Options des dossiers/Affichage),
tu coches la case "Masquer les extensions des fichiers dont le type est
connu", alors tu n'auras pas de plantage sans donner l'extension. Si cette
case n'est pas cochée, alors tu auras un plantage.
Je te remercie de ta réponse. Imagine-toi que j'avais pensé à cette option
car personnellement je masque toujours sur les PC que j'utilise les
extensions dont le type est connu. Mais je pensais que si masquer à
l'affichage n'empêchait pas Excel de reconnaître un fichier ".xls" a
fortiori en l'affichant cela fonctionnerait car masqué ne veut pas dire
pourtant supprimé ou absent. Mais je comprends avec tes explications qu'en
fait Excel réagit différemment de ce que je pensais.
Alors comme il me paraît plus compliqué ou fastidieux de demander à tous les
utilisateurs différents de masquer les extensions, je vais donc rajouter le
".xls" dans le code pour les Activate et Close.
Certes pour le Close et pour éviter l'ajout de ".xls" je peux remplacer
Workbooks(periode & ".xls").Close par le code suivant mais le code est
forcément plus long :
For Each w In Workbooks
If w.Name <> ThisWorkbook.Name Then
w.Close False
End If
Next
mais comme parfois j'ai trois classeurs ouverts en même temps qui
communiquent entre eux, le code ainsi conçu m'en fermerait deux soit un de
trop. A moins d'écrire :
If w.Name <> ThisWorkbook.Name and w.Name <> variable Then
variable étant le nom d'un des trois classeurs dont le nom sera récupéré à
son ouverture et qui devra rester ouvert.
Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun
d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner
d'extension, si un fichier Excel dans le répertoire précis que tu désignes
porte le nom en question, workbooks.open ouvrira le fichier même si tu ne
précises pas l'extension.
Pour Workbooks.Open j'ai compris et merci encore pour tout
Si dans l'Explorateur de Windows (Outils/Options des dossiers/Affichage), tu coches la case "Masquer les extensions des fichiers dont le type est connu", alors tu n'auras pas de plantage sans donner l'extension. Si cette case n'est pas cochée, alors tu auras un plantage.
Je te remercie de ta réponse. Imagine-toi que j'avais pensé à cette option car personnellement je masque toujours sur les PC que j'utilise les extensions dont le type est connu. Mais je pensais que si masquer à l'affichage n'empêchait pas Excel de reconnaître un fichier ".xls" a fortiori en l'affichant cela fonctionnerait car masqué ne veut pas dire pourtant supprimé ou absent. Mais je comprends avec tes explications qu'en fait Excel réagit différemment de ce que je pensais.
Alors comme il me paraît plus compliqué ou fastidieux de demander à tous les utilisateurs différents de masquer les extensions, je vais donc rajouter le ".xls" dans le code pour les Activate et Close.
Certes pour le Close et pour éviter l'ajout de ".xls" je peux remplacer Workbooks(periode & ".xls").Close par le code suivant mais le code est forcément plus long :
For Each w In Workbooks If w.Name <> ThisWorkbook.Name Then w.Close False End If Next
mais comme parfois j'ai trois classeurs ouverts en même temps qui communiquent entre eux, le code ainsi conçu m'en fermerait deux soit un de trop. A moins d'écrire :
If w.Name <> ThisWorkbook.Name and w.Name <> variable Then
variable étant le nom d'un des trois classeurs dont le nom sera récupéré à son ouverture et qui devra rester ouvert.
Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner d'extension, si un fichier Excel dans le répertoire précis que tu désignes porte le nom en question, workbooks.open ouvrira le fichier même si tu ne précises pas l'extension.
Pour Workbooks.Open j'ai compris et merci encore pour tout
khinoa
Ange Ounis
Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner d'extension, si un fichier Excel dans le répertoire précis que tu désignes porte le nom en question, workbooks.open ouvrira le fichier même si tu ne précises pas l'extension.
A mon avis, ce n'est pas un bug du tout. Excel ne se contente pas de chercher l'extension d'un fichier pour savoir s'il peut le reconnaître comme un des siens et l'ouvrir. Il analyse aussi s'il son entête pour vérifier qu'il comporte bien les 'marqueurs' de son format (BIFF, description par ex ici : http://www.wotsit.org/search.asp?page=2&sÚtabase) ou, sinon, si c'est un format qu'il peut convertir (par ex un fichier texte).
---------- Ange Ounis ----------
Bonjour,
Si dans l'Explorateur de Windows (Outils/Options des dossiers/Affichage), tu coches la case "Masquer les extensions des fichiers dont le type est connu", alors tu n'auras pas de plantage sans donner l'extension. Si cette case n'est pas cochée, alors tu auras un plantage. Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner d'extension, si un fichier Excel dans le répertoire précis que tu désignes porte le nom en question, workbooks.open ouvrira le fichier même si tu ne précises pas l'extension.
A+
Bonjour Clément,
Parce que rien ne t'empêche d'avoir toto.xls, toto.txt, toto.doc etc.
Oui d'accord avec Dir mais pour Activate et Close ? Pourquoi ".xls" est tantôt obligatoire et tantôt facultatif selon les PC qui exécutent le code ?
D'avance merci pour la réponse
khinoa
Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun
d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner
d'extension, si un fichier Excel dans le répertoire précis que tu
désignes porte le nom en question, workbooks.open ouvrira le fichier
même si tu ne précises pas l'extension.
A mon avis, ce n'est pas un bug du tout. Excel ne se contente pas de chercher
l'extension d'un fichier pour savoir s'il peut le reconnaître comme un des siens
et l'ouvrir. Il analyse aussi s'il son entête pour vérifier qu'il comporte bien
les 'marqueurs' de son format (BIFF, description par ex ici :
http://www.wotsit.org/search.asp?page=2&sÚtabase) ou, sinon, si c'est un
format qu'il peut convertir (par ex un fichier texte).
----------
Ange Ounis
----------
Bonjour,
Si dans l'Explorateur de Windows (Outils/Options des
dossiers/Affichage), tu coches la case "Masquer les extensions des
fichiers dont le type est connu", alors tu n'auras pas de plantage sans
donner l'extension. Si cette case n'est pas cochée, alors tu auras un
plantage.
Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun
d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner
d'extension, si un fichier Excel dans le répertoire précis que tu
désignes porte le nom en question, workbooks.open ouvrira le fichier
même si tu ne précises pas l'extension.
A+
Bonjour Clément,
Parce que rien ne t'empêche d'avoir toto.xls, toto.txt, toto.doc etc.
Oui d'accord avec Dir mais pour Activate et Close ? Pourquoi ".xls"
est tantôt obligatoire et tantôt facultatif selon les PC qui exécutent
le code ?
Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner d'extension, si un fichier Excel dans le répertoire précis que tu désignes porte le nom en question, workbooks.open ouvrira le fichier même si tu ne précises pas l'extension.
A mon avis, ce n'est pas un bug du tout. Excel ne se contente pas de chercher l'extension d'un fichier pour savoir s'il peut le reconnaître comme un des siens et l'ouvrir. Il analyse aussi s'il son entête pour vérifier qu'il comporte bien les 'marqueurs' de son format (BIFF, description par ex ici : http://www.wotsit.org/search.asp?page=2&sÚtabase) ou, sinon, si c'est un format qu'il peut convertir (par ex un fichier texte).
---------- Ange Ounis ----------
Bonjour,
Si dans l'Explorateur de Windows (Outils/Options des dossiers/Affichage), tu coches la case "Masquer les extensions des fichiers dont le type est connu", alors tu n'auras pas de plantage sans donner l'extension. Si cette case n'est pas cochée, alors tu auras un plantage. Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner d'extension, si un fichier Excel dans le répertoire précis que tu désignes porte le nom en question, workbooks.open ouvrira le fichier même si tu ne précises pas l'extension.
A+
Bonjour Clément,
Parce que rien ne t'empêche d'avoir toto.xls, toto.txt, toto.doc etc.
Oui d'accord avec Dir mais pour Activate et Close ? Pourquoi ".xls" est tantôt obligatoire et tantôt facultatif selon les PC qui exécutent le code ?
D'avance merci pour la réponse
khinoa
anonymousA
Bonjour,
Recherche dans la KB de Microsoft et tu trouveras en toutes lettres cette explication. J'ai moi même fait cette recherche il y a plus de 6 mois au travers d'une expérience qui m'est arrivée. Si tu veux , tu peux faire l'essai suivant : positionnes 2 fichiers portant le même nom, l'un avec une extension .xls et l'autre sans extension .Tu verras que si tu utilises open, tu ne pourras qu'ouvrir le fichier portant l'extension .xls même si tu désignes un fichier avec le même nom sans extension.
A+
Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner d'extension, si un fichier Excel dans le répertoire précis que tu désignes porte le nom en question, workbooks.open ouvrira le fichier même si tu ne précises pas l'extension.
A mon avis, ce n'est pas un bug du tout. Excel ne se contente pas de chercher l'extension d'un fichier pour savoir s'il peut le reconnaître comme un des siens et l'ouvrir. Il analyse aussi s'il son entête pour vérifier qu'il comporte bien les 'marqueurs' de son format (BIFF, description par ex ici : http://www.wotsit.org/search.asp?page=2&sÚtabase) ou, sinon, si c'est un format qu'il peut convertir (par ex un fichier texte).
---------- Ange Ounis ----------
Bonjour,
Si dans l'Explorateur de Windows (Outils/Options des dossiers/Affichage), tu coches la case "Masquer les extensions des fichiers dont le type est connu", alors tu n'auras pas de plantage sans donner l'extension. Si cette case n'est pas cochée, alors tu auras un plantage. Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner d'extension, si un fichier Excel dans le répertoire précis que tu désignes porte le nom en question, workbooks.open ouvrira le fichier même si tu ne précises pas l'extension.
A+
Bonjour Clément,
Parce que rien ne t'empêche d'avoir toto.xls, toto.txt, toto.doc etc.
Oui d'accord avec Dir mais pour Activate et Close ? Pourquoi ".xls" est tantôt obligatoire et tantôt facultatif selon les PC qui exécutent le code ?
D'avance merci pour la réponse
khinoa
Bonjour,
Recherche dans la KB de Microsoft et tu trouveras en toutes lettres
cette explication. J'ai moi même fait cette recherche il y a plus de 6
mois au travers d'une expérience qui m'est arrivée. Si tu veux , tu peux
faire l'essai suivant : positionnes 2 fichiers portant le même nom, l'un
avec une extension .xls et l'autre sans extension .Tu verras que si tu
utilises open, tu ne pourras qu'ouvrir le fichier portant l'extension
.xls même si tu désignes un fichier avec le même nom sans extension.
A+
Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun
d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner
d'extension, si un fichier Excel dans le répertoire précis que tu
désignes porte le nom en question, workbooks.open ouvrira le fichier
même si tu ne précises pas l'extension.
A mon avis, ce n'est pas un bug du tout. Excel ne se contente pas de
chercher l'extension d'un fichier pour savoir s'il peut le reconnaître
comme un des siens et l'ouvrir. Il analyse aussi s'il son entête pour
vérifier qu'il comporte bien les 'marqueurs' de son format (BIFF,
description par ex ici :
http://www.wotsit.org/search.asp?page=2&sÚtabase) ou, sinon, si c'est
un format qu'il peut convertir (par ex un fichier texte).
----------
Ange Ounis
----------
Bonjour,
Si dans l'Explorateur de Windows (Outils/Options des
dossiers/Affichage), tu coches la case "Masquer les extensions des
fichiers dont le type est connu", alors tu n'auras pas de plantage
sans donner l'extension. Si cette case n'est pas cochée, alors tu
auras un plantage.
Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun
d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner
d'extension, si un fichier Excel dans le répertoire précis que tu
désignes porte le nom en question, workbooks.open ouvrira le fichier
même si tu ne précises pas l'extension.
A+
Bonjour Clément,
Parce que rien ne t'empêche d'avoir toto.xls, toto.txt, toto.doc etc.
Oui d'accord avec Dir mais pour Activate et Close ? Pourquoi ".xls"
est tantôt obligatoire et tantôt facultatif selon les PC qui
exécutent le code ?
Recherche dans la KB de Microsoft et tu trouveras en toutes lettres cette explication. J'ai moi même fait cette recherche il y a plus de 6 mois au travers d'une expérience qui m'est arrivée. Si tu veux , tu peux faire l'essai suivant : positionnes 2 fichiers portant le même nom, l'un avec une extension .xls et l'autre sans extension .Tu verras que si tu utilises open, tu ne pourras qu'ouvrir le fichier portant l'extension .xls même si tu désignes un fichier avec le même nom sans extension.
A+
Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner d'extension, si un fichier Excel dans le répertoire précis que tu désignes porte le nom en question, workbooks.open ouvrira le fichier même si tu ne précises pas l'extension.
A mon avis, ce n'est pas un bug du tout. Excel ne se contente pas de chercher l'extension d'un fichier pour savoir s'il peut le reconnaître comme un des siens et l'ouvrir. Il analyse aussi s'il son entête pour vérifier qu'il comporte bien les 'marqueurs' de son format (BIFF, description par ex ici : http://www.wotsit.org/search.asp?page=2&sÚtabase) ou, sinon, si c'est un format qu'il peut convertir (par ex un fichier texte).
---------- Ange Ounis ----------
Bonjour,
Si dans l'Explorateur de Windows (Outils/Options des dossiers/Affichage), tu coches la case "Masquer les extensions des fichiers dont le type est connu", alors tu n'auras pas de plantage sans donner l'extension. Si cette case n'est pas cochée, alors tu auras un plantage. Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner d'extension, si un fichier Excel dans le répertoire précis que tu désignes porte le nom en question, workbooks.open ouvrira le fichier même si tu ne précises pas l'extension.
A+
Bonjour Clément,
Parce que rien ne t'empêche d'avoir toto.xls, toto.txt, toto.doc etc.
Oui d'accord avec Dir mais pour Activate et Close ? Pourquoi ".xls" est tantôt obligatoire et tantôt facultatif selon les PC qui exécutent le code ?
Recherche dans la KB de Microsoft et tu trouveras en toutes lettres cette explication. J'ai moi même fait cette recherche il y a plus de 6 mois au travers d'une expérience qui m'est arrivée. Si tu veux , tu peux faire l'essai suivant : positionnes 2 fichiers portant le même nom, l'un avec une extension .xls et l'autre sans extension .Tu verras que si tu utilises open, tu ne pourras qu'ouvrir le fichier portant l'extension .xls même si tu désignes un fichier avec le même nom sans extension.
A+
Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner d'extension, si un fichier Excel dans le répertoire précis que tu désignes porte le nom en question, workbooks.open ouvrira le fichier même si tu ne précises pas l'extension.
A mon avis, ce n'est pas un bug du tout. Excel ne se contente pas de chercher l'extension d'un fichier pour savoir s'il peut le reconnaître comme un des siens et l'ouvrir. Il analyse aussi s'il son entête pour vérifier qu'il comporte bien les 'marqueurs' de son format (BIFF, description par ex ici : http://www.wotsit.org/search.asp?page=2&sÚtabase) ou, sinon, si c'est un format qu'il peut convertir (par ex un fichier texte).
---------- Ange Ounis ----------
Bonjour,
Si dans l'Explorateur de Windows (Outils/Options des dossiers/Affichage), tu coches la case "Masquer les extensions des fichiers dont le type est connu", alors tu n'auras pas de plantage sans donner l'extension. Si cette case n'est pas cochée, alors tu auras un plantage. Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner d'extension, si un fichier Excel dans le répertoire précis que tu désignes porte le nom en question, workbooks.open ouvrira le fichier même si tu ne précises pas l'extension.
A+
Bonjour Clément,
Parce que rien ne t'empêche d'avoir toto.xls, toto.txt, toto.doc etc.
Oui d'accord avec Dir mais pour Activate et Close ? Pourquoi ".xls" est tantôt obligatoire et tantôt facultatif selon les PC qui exécutent le code ?
Recherche dans la KB de Microsoft et tu trouveras en toutes lettres
cette explication. J'ai moi même fait cette recherche il y a plus de 6
mois au travers d'une expérience qui m'est arrivée. Si tu veux , tu peux
faire l'essai suivant : positionnes 2 fichiers portant le même nom, l'un
avec une extension .xls et l'autre sans extension .Tu verras que si tu
utilises open, tu ne pourras qu'ouvrir le fichier portant l'extension
.xls même si tu désignes un fichier avec le même nom sans extension.
A+
Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun
d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner
d'extension, si un fichier Excel dans le répertoire précis que tu
désignes porte le nom en question, workbooks.open ouvrira le fichier
même si tu ne précises pas l'extension.
A mon avis, ce n'est pas un bug du tout. Excel ne se contente pas de
chercher l'extension d'un fichier pour savoir s'il peut le reconnaître
comme un des siens et l'ouvrir. Il analyse aussi s'il son entête pour
vérifier qu'il comporte bien les 'marqueurs' de son format (BIFF,
description par ex ici :
http://www.wotsit.org/search.asp?page=2&sÚtabase) ou, sinon, si
c'est un format qu'il peut convertir (par ex un fichier texte).
----------
Ange Ounis
----------
Bonjour,
Si dans l'Explorateur de Windows (Outils/Options des
dossiers/Affichage), tu coches la case "Masquer les extensions des
fichiers dont le type est connu", alors tu n'auras pas de plantage
sans donner l'extension. Si cette case n'est pas cochée, alors tu
auras un plantage.
Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun
d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans
donner d'extension, si un fichier Excel dans le répertoire précis que
tu désignes porte le nom en question, workbooks.open ouvrira le
fichier même si tu ne précises pas l'extension.
A+
Bonjour Clément,
Parce que rien ne t'empêche d'avoir toto.xls, toto.txt, toto.doc etc.
Oui d'accord avec Dir mais pour Activate et Close ? Pourquoi ".xls"
est tantôt obligatoire et tantôt facultatif selon les PC qui
exécutent le code ?
Recherche dans la KB de Microsoft et tu trouveras en toutes lettres cette explication. J'ai moi même fait cette recherche il y a plus de 6 mois au travers d'une expérience qui m'est arrivée. Si tu veux , tu peux faire l'essai suivant : positionnes 2 fichiers portant le même nom, l'un avec une extension .xls et l'autre sans extension .Tu verras que si tu utilises open, tu ne pourras qu'ouvrir le fichier portant l'extension .xls même si tu désignes un fichier avec le même nom sans extension.
A+
Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner d'extension, si un fichier Excel dans le répertoire précis que tu désignes porte le nom en question, workbooks.open ouvrira le fichier même si tu ne précises pas l'extension.
A mon avis, ce n'est pas un bug du tout. Excel ne se contente pas de chercher l'extension d'un fichier pour savoir s'il peut le reconnaître comme un des siens et l'ouvrir. Il analyse aussi s'il son entête pour vérifier qu'il comporte bien les 'marqueurs' de son format (BIFF, description par ex ici : http://www.wotsit.org/search.asp?page=2&sÚtabase) ou, sinon, si c'est un format qu'il peut convertir (par ex un fichier texte).
---------- Ange Ounis ----------
Bonjour,
Si dans l'Explorateur de Windows (Outils/Options des dossiers/Affichage), tu coches la case "Masquer les extensions des fichiers dont le type est connu", alors tu n'auras pas de plantage sans donner l'extension. Si cette case n'est pas cochée, alors tu auras un plantage. Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner d'extension, si un fichier Excel dans le répertoire précis que tu désignes porte le nom en question, workbooks.open ouvrira le fichier même si tu ne précises pas l'extension.
A+
Bonjour Clément,
Parce que rien ne t'empêche d'avoir toto.xls, toto.txt, toto.doc etc.
Oui d'accord avec Dir mais pour Activate et Close ? Pourquoi ".xls" est tantôt obligatoire et tantôt facultatif selon les PC qui exécutent le code ?
D'avance merci pour la réponse
khinoa
Ange Ounis
Tout s'explique :) Il s'agit bien d'un bug pour le coup, qui concerne Excel 2000. Je m'apprêtais à te répondre après avoir retesté avec 2002, mais ton lien explique notre différence d'expérience, et du même coup d'ailleurs ce que constatait le posteur initial :
Oui d'accord avec Dir mais pour Activate et Close ? Pourquoi ".xls" est tantôt obligatoire et tantôt facultatif selon les PC qui exécutent le code ?
Recherche dans la KB de Microsoft et tu trouveras en toutes lettres cette explication. J'ai moi même fait cette recherche il y a plus de 6 mois au travers d'une expérience qui m'est arrivée. Si tu veux , tu peux faire l'essai suivant : positionnes 2 fichiers portant le même nom, l'un avec une extension .xls et l'autre sans extension .Tu verras que si tu utilises open, tu ne pourras qu'ouvrir le fichier portant l'extension .xls même si tu désignes un fichier avec le même nom sans extension.
A+
Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner
d'extension, si un fichier Excel dans le répertoire précis que tu désignes porte le nom en question, workbooks.open ouvrira le fichier même si tu ne précises pas l'extension.
A mon avis, ce n'est pas un bug du tout. Excel ne se contente pas de chercher l'extension d'un fichier pour savoir s'il peut le reconnaître comme un des siens et l'ouvrir. Il analyse aussi s'il son entête pour vérifier qu'il comporte bien les 'marqueurs' de son format (BIFF, description par ex ici : http://www.wotsit.org/search.asp?page=2&sÚtabase) ou, sinon, si c'est un format qu'il peut convertir (par ex un fichier texte).
---------- Ange Ounis ----------
Bonjour,
Si dans l'Explorateur de Windows (Outils/Options des dossiers/Affichage), tu coches la case "Masquer les extensions des fichiers dont le type est connu", alors tu n'auras pas de plantage sans donner l'extension. Si cette case n'est pas cochée, alors tu auras un plantage. Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner d'extension, si un fichier Excel dans le répertoire précis que tu désignes porte le nom en question, workbooks.open ouvrira le fichier même si tu ne précises pas l'extension.
A+
Bonjour Clément,
Parce que rien ne t'empêche d'avoir toto.xls, toto.txt, toto.doc etc.
Oui d'accord avec Dir mais pour Activate et Close ? Pourquoi ".xls" est tantôt obligatoire et tantôt facultatif selon les PC qui exécutent le code ?
D'avance merci pour la réponse
khinoa
Tout s'explique :)
Il s'agit bien d'un bug pour le coup, qui concerne Excel 2000.
Je m'apprêtais à te répondre après avoir retesté avec 2002, mais ton lien
explique notre différence d'expérience, et du même coup d'ailleurs ce que
constatait le posteur initial :
Oui d'accord avec Dir mais pour Activate et Close ? Pourquoi ".xls"
est tantôt obligatoire et tantôt facultatif selon les PC qui
exécutent le code ?
Recherche dans la KB de Microsoft et tu trouveras en toutes lettres
cette explication. J'ai moi même fait cette recherche il y a plus de 6
mois au travers d'une expérience qui m'est arrivée. Si tu veux , tu
peux faire l'essai suivant : positionnes 2 fichiers portant le même
nom, l'un avec une extension .xls et l'autre sans extension .Tu verras
que si tu utilises open, tu ne pourras qu'ouvrir le fichier portant
l'extension .xls même si tu désignes un fichier avec le même nom sans
extension.
A+
Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun
d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans
donner
d'extension, si un fichier Excel dans le répertoire précis que tu
désignes porte le nom en question, workbooks.open ouvrira le fichier
même si tu ne précises pas l'extension.
A mon avis, ce n'est pas un bug du tout. Excel ne se contente pas de
chercher l'extension d'un fichier pour savoir s'il peut le
reconnaître comme un des siens et l'ouvrir. Il analyse aussi s'il son
entête pour vérifier qu'il comporte bien les 'marqueurs' de son
format (BIFF, description par ex ici :
http://www.wotsit.org/search.asp?page=2&sÚtabase) ou, sinon, si
c'est un format qu'il peut convertir (par ex un fichier texte).
----------
Ange Ounis
----------
Bonjour,
Si dans l'Explorateur de Windows (Outils/Options des
dossiers/Affichage), tu coches la case "Masquer les extensions des
fichiers dont le type est connu", alors tu n'auras pas de plantage
sans donner l'extension. Si cette case n'est pas cochée, alors tu
auras un plantage.
Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun
d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans
donner d'extension, si un fichier Excel dans le répertoire précis
que tu désignes porte le nom en question, workbooks.open ouvrira le
fichier même si tu ne précises pas l'extension.
A+
Bonjour Clément,
Parce que rien ne t'empêche d'avoir toto.xls, toto.txt, toto.doc etc.
Oui d'accord avec Dir mais pour Activate et Close ? Pourquoi ".xls"
est tantôt obligatoire et tantôt facultatif selon les PC qui
exécutent le code ?
Tout s'explique :) Il s'agit bien d'un bug pour le coup, qui concerne Excel 2000. Je m'apprêtais à te répondre après avoir retesté avec 2002, mais ton lien explique notre différence d'expérience, et du même coup d'ailleurs ce que constatait le posteur initial :
Oui d'accord avec Dir mais pour Activate et Close ? Pourquoi ".xls" est tantôt obligatoire et tantôt facultatif selon les PC qui exécutent le code ?
Recherche dans la KB de Microsoft et tu trouveras en toutes lettres cette explication. J'ai moi même fait cette recherche il y a plus de 6 mois au travers d'une expérience qui m'est arrivée. Si tu veux , tu peux faire l'essai suivant : positionnes 2 fichiers portant le même nom, l'un avec une extension .xls et l'autre sans extension .Tu verras que si tu utilises open, tu ne pourras qu'ouvrir le fichier portant l'extension .xls même si tu désignes un fichier avec le même nom sans extension.
A+
Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner
d'extension, si un fichier Excel dans le répertoire précis que tu désignes porte le nom en question, workbooks.open ouvrira le fichier même si tu ne précises pas l'extension.
A mon avis, ce n'est pas un bug du tout. Excel ne se contente pas de chercher l'extension d'un fichier pour savoir s'il peut le reconnaître comme un des siens et l'ouvrir. Il analyse aussi s'il son entête pour vérifier qu'il comporte bien les 'marqueurs' de son format (BIFF, description par ex ici : http://www.wotsit.org/search.asp?page=2&sÚtabase) ou, sinon, si c'est un format qu'il peut convertir (par ex un fichier texte).
---------- Ange Ounis ----------
Bonjour,
Si dans l'Explorateur de Windows (Outils/Options des dossiers/Affichage), tu coches la case "Masquer les extensions des fichiers dont le type est connu", alors tu n'auras pas de plantage sans donner l'extension. Si cette case n'est pas cochée, alors tu auras un plantage. Par ailleurs, pour la méthode Open , tu profites ( et tout un chacun d'ailleurs) d'un bug connu de Microsoft Excel qui fait que sans donner d'extension, si un fichier Excel dans le répertoire précis que tu désignes porte le nom en question, workbooks.open ouvrira le fichier même si tu ne précises pas l'extension.
A+
Bonjour Clément,
Parce que rien ne t'empêche d'avoir toto.xls, toto.txt, toto.doc etc.
Oui d'accord avec Dir mais pour Activate et Close ? Pourquoi ".xls" est tantôt obligatoire et tantôt facultatif selon les PC qui exécutent le code ?