j'ai la macro suivante qui fonctionnait très bien jusque-là...:
Private Sub Workbook_Open()
Sheets(Format(Date, "mmmm")).Select
End Sub
Mais depuis qq jours le message d'erreur suivant apparaît :
"erreur d'excéution '9'
L'indice n'appartient pas à la sélection".
Le fichier a peut-être modifié par qq'un (c'est un fichier partagé), sans
m'en avertir, ce qui pourrait expliquer le mauvais fonctionnement depuis qq
jours, mais a priori j'ai rien vu de spécial. C'est un fichier avec 12
feuilles chacune représentant le planning d'un mois, le but de la macro étant
de faire ouvrir le fichier sur le mois en cours...
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
michdenis
Bonjour DD,
Format(Date, "mmmm") retourne le mois (écris en long) de la date courante. Tu dois t'assurer que ton classeur contient réellement une feuille à ce nom et que ce nom est écrit correctement.
Salutations!
"dd" a écrit dans le message de news: bonjour,
j'ai la macro suivante qui fonctionnait très bien jusque-là...: Private Sub Workbook_Open() Sheets(Format(Date, "mmmm")).Select End Sub
Mais depuis qq jours le message d'erreur suivant apparaît :
"erreur d'excéution '9' L'indice n'appartient pas à la sélection".
Le fichier a peut-être modifié par qq'un (c'est un fichier partagé), sans m'en avertir, ce qui pourrait expliquer le mauvais fonctionnement depuis qq jours, mais a priori j'ai rien vu de spécial. C'est un fichier avec 12 feuilles chacune représentant le planning d'un mois, le but de la macro étant de faire ouvrir le fichier sur le mois en cours...
Qq'un a t-il une solution pour régler mon pb?
merci dd
Bonjour DD,
Format(Date, "mmmm") retourne le mois (écris en long) de la date courante. Tu dois t'assurer que ton classeur contient réellement
une feuille à ce nom et que ce nom est écrit correctement.
Salutations!
"dd" <dd@discussions.microsoft.com> a écrit dans le message de news: E6E399B0-2799-4DA4-8349-E025BEF4B82E@microsoft.com...
bonjour,
j'ai la macro suivante qui fonctionnait très bien jusque-là...:
Private Sub Workbook_Open()
Sheets(Format(Date, "mmmm")).Select
End Sub
Mais depuis qq jours le message d'erreur suivant apparaît :
"erreur d'excéution '9'
L'indice n'appartient pas à la sélection".
Le fichier a peut-être modifié par qq'un (c'est un fichier partagé), sans
m'en avertir, ce qui pourrait expliquer le mauvais fonctionnement depuis qq
jours, mais a priori j'ai rien vu de spécial. C'est un fichier avec 12
feuilles chacune représentant le planning d'un mois, le but de la macro étant
de faire ouvrir le fichier sur le mois en cours...
Format(Date, "mmmm") retourne le mois (écris en long) de la date courante. Tu dois t'assurer que ton classeur contient réellement une feuille à ce nom et que ce nom est écrit correctement.
Salutations!
"dd" a écrit dans le message de news: bonjour,
j'ai la macro suivante qui fonctionnait très bien jusque-là...: Private Sub Workbook_Open() Sheets(Format(Date, "mmmm")).Select End Sub
Mais depuis qq jours le message d'erreur suivant apparaît :
"erreur d'excéution '9' L'indice n'appartient pas à la sélection".
Le fichier a peut-être modifié par qq'un (c'est un fichier partagé), sans m'en avertir, ce qui pourrait expliquer le mauvais fonctionnement depuis qq jours, mais a priori j'ai rien vu de spécial. C'est un fichier avec 12 feuilles chacune représentant le planning d'un mois, le but de la macro étant de faire ouvrir le fichier sur le mois en cours...
Qq'un a t-il une solution pour régler mon pb?
merci dd
michdenis
Bonjour DD,
Si tu veux éviter que des petits comiques modifient l'onglet de tes feuilles et fassent planter ta procédure, utilise ceci à la place de ta ligne de code :
Même si tes usagers modifient le nom des onglets des feuilles, ta procédure va continuer de fonctionner et d'afficher la bonne feuille à l'ouverture.
Salutations!
"michdenis" a écrit dans le message de news: Bonjour DD,
Format(Date, "mmmm") retourne le mois (écris en long) de la date courante. Tu dois t'assurer que ton classeur contient réellement une feuille à ce nom et que ce nom est écrit correctement.
Salutations!
"dd" a écrit dans le message de news: bonjour,
j'ai la macro suivante qui fonctionnait très bien jusque-là...: Private Sub Workbook_Open() Sheets(Format(Date, "mmmm")).Select End Sub
Mais depuis qq jours le message d'erreur suivant apparaît :
"erreur d'excéution '9' L'indice n'appartient pas à la sélection".
Le fichier a peut-être modifié par qq'un (c'est un fichier partagé), sans m'en avertir, ce qui pourrait expliquer le mauvais fonctionnement depuis qq jours, mais a priori j'ai rien vu de spécial. C'est un fichier avec 12 feuilles chacune représentant le planning d'un mois, le but de la macro étant de faire ouvrir le fichier sur le mois en cours...
Qq'un a t-il une solution pour régler mon pb?
merci dd
Bonjour DD,
Si tu veux éviter que des petits comiques modifient l'onglet de tes feuilles et fassent planter ta procédure, utilise ceci à la
place de ta ligne de code :
Même si tes usagers modifient le nom des onglets des feuilles, ta procédure va continuer de fonctionner et d'afficher la bonne
feuille à l'ouverture.
Salutations!
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news: u0zi0XzoFHA.3036@TK2MSFTNGP14.phx.gbl...
Bonjour DD,
Format(Date, "mmmm") retourne le mois (écris en long) de la date courante. Tu dois t'assurer que ton classeur contient réellement
une feuille à ce nom et que ce nom est écrit correctement.
Salutations!
"dd" <dd@discussions.microsoft.com> a écrit dans le message de news: E6E399B0-2799-4DA4-8349-E025BEF4B82E@microsoft.com...
bonjour,
j'ai la macro suivante qui fonctionnait très bien jusque-là...:
Private Sub Workbook_Open()
Sheets(Format(Date, "mmmm")).Select
End Sub
Mais depuis qq jours le message d'erreur suivant apparaît :
"erreur d'excéution '9'
L'indice n'appartient pas à la sélection".
Le fichier a peut-être modifié par qq'un (c'est un fichier partagé), sans
m'en avertir, ce qui pourrait expliquer le mauvais fonctionnement depuis qq
jours, mais a priori j'ai rien vu de spécial. C'est un fichier avec 12
feuilles chacune représentant le planning d'un mois, le but de la macro étant
de faire ouvrir le fichier sur le mois en cours...
Si tu veux éviter que des petits comiques modifient l'onglet de tes feuilles et fassent planter ta procédure, utilise ceci à la place de ta ligne de code :
Même si tes usagers modifient le nom des onglets des feuilles, ta procédure va continuer de fonctionner et d'afficher la bonne feuille à l'ouverture.
Salutations!
"michdenis" a écrit dans le message de news: Bonjour DD,
Format(Date, "mmmm") retourne le mois (écris en long) de la date courante. Tu dois t'assurer que ton classeur contient réellement une feuille à ce nom et que ce nom est écrit correctement.
Salutations!
"dd" a écrit dans le message de news: bonjour,
j'ai la macro suivante qui fonctionnait très bien jusque-là...: Private Sub Workbook_Open() Sheets(Format(Date, "mmmm")).Select End Sub
Mais depuis qq jours le message d'erreur suivant apparaît :
"erreur d'excéution '9' L'indice n'appartient pas à la sélection".
Le fichier a peut-être modifié par qq'un (c'est un fichier partagé), sans m'en avertir, ce qui pourrait expliquer le mauvais fonctionnement depuis qq jours, mais a priori j'ai rien vu de spécial. C'est un fichier avec 12 feuilles chacune représentant le planning d'un mois, le but de la macro étant de faire ouvrir le fichier sur le mois en cours...
Qq'un a t-il une solution pour régler mon pb?
merci dd
dd
bonjour, ta première suggestion fonctionne, j'ai trouvé 2 anomalies, un "2005" ajouté sur l'onglet "janvier", et l'accent circonflexe du mois d'août qui était absent. Donc ça refonctionne...
pour la forme je vais qd même réécrire la macro avec ta deuxième solution, mais comment renomme t-on les feuilles sous VBE (d'ailleurs moi je trouve VBA mais pâs VBE?). J'ai fait clic droit, mais je n'ai pas d'option "renommer"... Désolé si mes questions sont neuneus, mais je suis pas pro des macros...
Question subsidiaire : la ligne de code c'est bien la ligne du milieu? donc qd tu dis "ceci ne constitue qu'une ligne de code", ça signifie qu'il faut l'écrire sur une seule ligne (le _ signifie qu'il faut en fait écrire à la suite?)
A+ dd
bonjour,
ta première suggestion fonctionne, j'ai trouvé 2 anomalies, un "2005" ajouté
sur l'onglet "janvier", et l'accent circonflexe du mois d'août qui était
absent. Donc ça refonctionne...
pour la forme je vais qd même réécrire la macro avec ta deuxième solution,
mais comment renomme t-on les feuilles sous VBE (d'ailleurs moi je trouve VBA
mais pâs VBE?). J'ai fait clic droit, mais je n'ai pas d'option "renommer"...
Désolé si mes questions sont neuneus, mais je suis pas pro des macros...
Question subsidiaire : la ligne de code c'est bien la ligne du milieu? donc
qd tu dis "ceci ne constitue qu'une ligne de code", ça signifie qu'il faut
l'écrire sur une seule ligne (le _ signifie qu'il faut en fait écrire à la
suite?)
bonjour, ta première suggestion fonctionne, j'ai trouvé 2 anomalies, un "2005" ajouté sur l'onglet "janvier", et l'accent circonflexe du mois d'août qui était absent. Donc ça refonctionne...
pour la forme je vais qd même réécrire la macro avec ta deuxième solution, mais comment renomme t-on les feuilles sous VBE (d'ailleurs moi je trouve VBA mais pâs VBE?). J'ai fait clic droit, mais je n'ai pas d'option "renommer"... Désolé si mes questions sont neuneus, mais je suis pas pro des macros...
Question subsidiaire : la ligne de code c'est bien la ligne du milieu? donc qd tu dis "ceci ne constitue qu'une ligne de code", ça signifie qu'il faut l'écrire sur une seule ligne (le _ signifie qu'il faut en fait écrire à la suite?)
A+ dd
michdenis
Bonjour DD,
Dans VBA, si tu préfères,
Tu sélectionnes ta feuille, et dans la fenêtre des propriétés que tu peux afficher à partir du menu si elle n'est pas déjà présente, tu peux modifier le nom des objets "Feuille" par la propriété Name
Les noms des objets feuille se présente de cette façon
Feuil1(Feuil1)
La propriét Name modifiera Feuil1 pour le nom du mois, Ce qui est entre parenthèse représente le nom de l'onglet de la feuille.
Pour ce qui est du code : si je n'avais pas mis de "_" , tout le code devrait être écrit sur une seule et même ligne. Cependant, tu peux te contenter d'en faire un copier-coller.
"dd" a écrit dans le message de news: bonjour, ta première suggestion fonctionne, j'ai trouvé 2 anomalies, un "2005" ajouté sur l'onglet "janvier", et l'accent circonflexe du mois d'août qui était absent. Donc ça refonctionne...
pour la forme je vais qd même réécrire la macro avec ta deuxième solution, mais comment renomme t-on les feuilles sous VBE (d'ailleurs moi je trouve VBA mais pâs VBE?). J'ai fait clic droit, mais je n'ai pas d'option "renommer"... Désolé si mes questions sont neuneus, mais je suis pas pro des macros...
Question subsidiaire : la ligne de code c'est bien la ligne du milieu? donc qd tu dis "ceci ne constitue qu'une ligne de code", ça signifie qu'il faut l'écrire sur une seule ligne (le _ signifie qu'il faut en fait écrire à la suite?)
A+ dd
Bonjour DD,
Dans VBA, si tu préfères,
Tu sélectionnes ta feuille, et dans la fenêtre des propriétés que tu peux afficher à partir du menu si elle n'est pas déjà présente,
tu peux modifier le nom des objets "Feuille" par la propriété Name
Les noms des objets feuille se présente de cette façon
Feuil1(Feuil1)
La propriét Name modifiera Feuil1 pour le nom du mois, Ce qui est entre parenthèse représente le nom de l'onglet de la feuille.
Pour ce qui est du code : si je n'avais pas mis de "_" , tout le code devrait être écrit sur une seule et même ligne. Cependant, tu
peux te contenter d'en faire un copier-coller.
"dd" <dd@discussions.microsoft.com> a écrit dans le message de news: 7A8EDA7D-5961-42D0-BAB2-54DAD7BB6F72@microsoft.com...
bonjour,
ta première suggestion fonctionne, j'ai trouvé 2 anomalies, un "2005" ajouté
sur l'onglet "janvier", et l'accent circonflexe du mois d'août qui était
absent. Donc ça refonctionne...
pour la forme je vais qd même réécrire la macro avec ta deuxième solution,
mais comment renomme t-on les feuilles sous VBE (d'ailleurs moi je trouve VBA
mais pâs VBE?). J'ai fait clic droit, mais je n'ai pas d'option "renommer"...
Désolé si mes questions sont neuneus, mais je suis pas pro des macros...
Question subsidiaire : la ligne de code c'est bien la ligne du milieu? donc
qd tu dis "ceci ne constitue qu'une ligne de code", ça signifie qu'il faut
l'écrire sur une seule ligne (le _ signifie qu'il faut en fait écrire à la
suite?)
Tu sélectionnes ta feuille, et dans la fenêtre des propriétés que tu peux afficher à partir du menu si elle n'est pas déjà présente, tu peux modifier le nom des objets "Feuille" par la propriété Name
Les noms des objets feuille se présente de cette façon
Feuil1(Feuil1)
La propriét Name modifiera Feuil1 pour le nom du mois, Ce qui est entre parenthèse représente le nom de l'onglet de la feuille.
Pour ce qui est du code : si je n'avais pas mis de "_" , tout le code devrait être écrit sur une seule et même ligne. Cependant, tu peux te contenter d'en faire un copier-coller.
"dd" a écrit dans le message de news: bonjour, ta première suggestion fonctionne, j'ai trouvé 2 anomalies, un "2005" ajouté sur l'onglet "janvier", et l'accent circonflexe du mois d'août qui était absent. Donc ça refonctionne...
pour la forme je vais qd même réécrire la macro avec ta deuxième solution, mais comment renomme t-on les feuilles sous VBE (d'ailleurs moi je trouve VBA mais pâs VBE?). J'ai fait clic droit, mais je n'ai pas d'option "renommer"... Désolé si mes questions sont neuneus, mais je suis pas pro des macros...
Question subsidiaire : la ligne de code c'est bien la ligne du milieu? donc qd tu dis "ceci ne constitue qu'une ligne de code", ça signifie qu'il faut l'écrire sur une seule ligne (le _ signifie qu'il faut en fait écrire à la suite?)