• Initiateur de la discussion Initiateur de la discussion jtf
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

jtf

XLDnaute Nouveau
bonjour,

donc voila une erreur survient lors de l'ouverture du fichier

sachant que le code de base fonctionnait losqu'il n'y avait qu'une seule feuille
Code:
Private Sub Workbook_Open()
Dim c As Range
For Each c In Feuil2.Range("b2:b" & Feuil2.Range("b65536").End(xlUp).Row)
      If Date = c.Value Then c.EntireRow.Select: Exit Sub
     
      Next
End Sub
j'ai ajouté des feuilles et modifié le code comme suit :
Code:
Private Sub Workbook_Open()
Dim c As Range
For Each c In Feuil[COLOR="red"]1[/COLOR].Range("b2:b" & Feuil[COLOR="Red"]1[/COLOR].Range("b65536").End(xlUp).Row)
      If Date = c.Value Then c.EntireRow.Select: Exit Sub
     
      Next
End Sub
et l'erreur survient:
"nom ambigu" et me sur ligne "Workbook_Open"


en vous remerciant

je joint un exemple :
 

Pièces jointes

Re : erreur non comprise

Bonjour jtf,

Tu ne peux avoir qu'un seul événement WorkBook_Open dans ton classeur.
Modifies donc ton code ainsi :

Code:
Private Sub Workbook_Open()
Dim c As Range

For Each ws In Me.Worksheets
  For Each c In Sheets(ws.Name).Range("b2:b" & Sheets(ws.Name).Range("b65536").End(xlUp).Row).Cells
    If Date = c.Value Then c.EntireRow.Select: Exit For
  Next
Next

End Sub

J'ai rajouté une boucle qui balaie l'ensemble des feuilles de ton classeur.
Il ne te reste plus qu'à adapter ce code à ton usage, car sinon il n'y a pas de sens à sélectionner une ligne sans rien y faire (tu ne verras pas le résultat de ta macro si tu ne lances pas l'exécution pas-à-pas).

Espérant avoir répondu.

Cordialement.
 
Re : erreur non comprise

Bonjour Papou Jtf
à mon avis c'est pas ça que tu veux, mais tu voudrais que si la feuille est activée la ligne du jour soit sélectionnée
a mon avis si cela correspond à ta première demande ?
à te lire
Papou
 
Re : erreur non comprise

modif : bonjour paritec
oui c'est cela

bonjour papou (PascalXLD désolé d'avoir oublié),
le fait de sélectionné ne sert que a voir la date du jour au premier coup d'oeil

et donc je ne sait pas si cela est lié mais maintenan l'erreur est
"1004" "la méthode select de la classe range a échoué"
Code:
Private Sub Workbook_Open()
Dim c As Range

For Each ws In Me.Worksheets
  For Each c In Sheets(ws.Name).Range("b2:b" & Sheets(ws.Name).Range("b65536").End(xlUp).Row).Cells
[COLOR="Yellow"]=>[/COLOR]    If Date = c.Value Then [COLOR="Yellow"]c.EntireRow.Select[/COLOR]: Exit For
  Next
Next

End Sub

encore désolé mais cette ligne
Code:
For Each c In Sheets(ws.Name).Range("b2:b" & Sheets(ws.Name).Range("b65536").End(xlUp).Row).Cells
j'ai du mal a la comprendre donc je n'arrive pas a la modifier
en vous remerciant
jtf
 

Pièces jointes

Dernière édition:
Re : erreur non comprise

Bonjour JTF Papou,
je pense que ce que tu veux c'est plutôt ça
à placer dans chaque feuilles et non plus dans le Open
enfin a mon avis
a+
papou

Private Sub Worksheet_Activate()
Dim c As Range
For Each c In Feuil1.Range("B2:B" & Feuil1.Range("B65536").End(xlUp).Row)
If Date = c.Value Then c.EntireRow.Select: Exit Sub
Next
End Sub
 
Re : erreur non comprise

RE

euh je crois qu'il faut modifier ta macro un petit peu

Private Sub Worksheet_Activate()
Dim c As Range
For Each c In Range("B2:B" & Range("B65536").End(xlUp).Row)
If c.Value = Date Then c.EntireRow.Select: Exit Sub
Next
End Sub
 
Re : erreur non comprise

modif:
oups désolé j'ai été trop lent
merci pascal mais le système de paritec est le mieu adapté pour moi
merci beaucoup



voila c'est encore une foi parfait merci beaucoup

juste paritec
chaque classeur correspond a un type de matériel a louer et chaque feuille correspond au numéro de ce matériel et les moi défiles sur cette même feuille

mais vraiment merci a tout les deux
vous ce forum et surtout ces forumeur m'aident vraiment beaucoup

bonne journée et continuez ainsi
 
Dernière édition:
Re : erreur non comprise

Bonjour Jtf Pascal,
Pascal ta modif est parfaite merci c'est vrai que j'aurais pu y penser mais !!!!!
Jtf non assurément la macro de Pascal est meilleure et en plus elle couvre l'ensemble des feuilles en une macro.
Mais pour le reste Jtf pas tout compris.
Le mieux mets en forme un classeur avec toutes ses feuilles les dates un minimum d'info si tu veux et après on regardera c'est plus simple que de travailler au coup a coup
a+
Papou
 
Re : erreur non comprise

RE

En fait en effet il me semble que si la macro doit s'appliquer à toutes les feuilles il est plus simple de passer par mon code.

Par contre c'est vrai que si cela s'applique qu'à certaines feuilles il préférable de passer soit par la tienne, soit de faire des tests sur le noms de feuille
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
7
Affichages
315
Réponses
5
Affichages
699
Réponses
10
Affichages
522
Retour