Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

selectionchange /range = nom d'une sheet

  • Initiateur de la discussion Initiateur de la discussion simons
  • 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 !

S

simons

Guest
Bonjour le forum,

Je cherche un code pour qui en cas de modif d'une range me fais apparaitre la sheet qui est égale à la valeur de ma range.
Pour l'instant j'utilise :
Worksheet_SelectionChange(ByVal Target As Range)
pour la valeur de la range je pensais passer par :
Application.ActiveSheet.Name mais ca n'a pas l'air de marcher...
:S
Merci d'avance pour l'aide.
 
Bonjour

par exemple le nom de tafeuille se toruve dans la cellule A1 et doit être selectionnée quand la cellule A1 est modifiée

Private Sub Worksheet_Change(ByVal Target As Range)

Dim Mafeuille as string

if not intersect(target,Range('A1')) is nothing then
Mafeuille=range('A1')
on error goto erreur
sheets(MaFeuille).select
end if
exit sub
erreur:
msgbox 'Cette feuille n'esite pas'

End Sub

Bon courage
 
vbno then exit sub / range = nom d'une sheet

Me revoila avec mon bordereau (que j'ai mis en fichier joint pour être plus explicite :huh: )
Quelques problèmes persistent et j'ai également une idée à approfondir.
Commençons par le commencement. C'est à dire la où ça bug...


Sur ma feuil2 mon bouton de commande génére un msgbox qui si on clic sur vbno valide ajoute quand même une sheet malgrès ma ligne :
If rep = vbNo Then Exit Sub


Je veux afficher le bordereau à modifier. Je passe donc par une inputbox en feuil1 dont la valeur viens en feuil3 et le code de pascal ne m'aide malheuresement pas 🙁

Pour mon idée voila je pense que ce fichier va être un peu costaud j'ai entre 5 et 20 bordereaux à saisir par jour quelqu'un peux il me donner un lien avec des exemples concrets pour enregistrer mes nouvelles pages sous un classeur différent.


Merci d'avance aux gens qui se pencherons sur mes problèmes. [file name=Bordereau_20050519170209.zip size=19627]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Bordereau_20050519170209.zip[/file]
 

Pièces jointes

Re:vbno then exit sub / range = nom d'une sheet

Bonjour,

Réponse à ta question 1 :

Dans ta macro Sub commandbutton2_click() de la feuille 2, tu dois inverser deux instructions :

Macro dans ton fichier :

Code:
rep = msgbox('Valider le bordereau ?', vbYesNo)
rep = vbYes
If rep = vbNo Then Exit Sub

Macro à placer :

Code:
rep = msgbox('Valider le bordereau ?', vbYesNo)
If rep = vbNo Then Exit Sub
rep = vbYes

Question 2 : c'est quoi la feuille 3 ?

Message édité par: Dan, à: 23/05/2005 13:33
 
Re:vbno then exit sub / range = nom d'une sheet

Un grand merci pour ton aide Dan.
La solution était pourtant simple.....
:woohoo:

Pour ce qui est de ma feuille 3 (masquée sur mon fichier. Pour l'afficher passer par Format/Feuille/afficher.) : Il sagit juste d'une feuille de transition.

Je veux affecter une macro 'selection change' à cette feuille3 pour annuler la feuille qui correspond au numéro que je recherche.

Pour être concret voila un exemple :
Je créer un nouveau bordereau. Relever le numéro sur la feuille2.
On reviens ensuite sur la feuille1.
Je fait ensuite annuler ce bordereau. ( je pense que le code sera sensiblement similaire pour rechercher..)
Je ne sais pas comment faire référence à la feuille qui correspond au numéro que je recherche....

Merci d'avance pour celui ou celle qui connait la réponse à mon problème.
 
Re:vbno then exit sub / range = nom d'une sheet

Bonjour,

Bon j'espère avoir compris ce que tu demandes.

Voilà un code à mettre à la place de celui existant et relatif au bouton 'Annule bordereau'

Code:
Private Sub CommandButton3_Click()
Dim message As String
message = InputBox('Quel est le numéro du bordereau à annuler ?'Â'Â')
If message = Feuil4.Range('A1'Â'Â').Value Then Feuil4.Range('A1'Â'Â').Value = '' Else End
End Sub

Bon à adapter en fonction du nom de tes feuilles si nécessaire.

😉

Message édité par: Dan, à: 26/05/2005 13:15
 
Re:vbno then exit sub / range = nom d'une sheet

Bonjour,

Bon me revoila avec mon bordereau qui avance à petits pas..

Je bloque toujours pour faire apparaitre la feuille qui correspond au numéro que je recherche (cette feuille que je veux faire apparaitre se trouve sur un classeur nommé 'classeur1'. Bien sur ce classeur est ouvert quand je lance ma macro). :angry:

Voila le code que j'ai saisi :

'annuler
Private Sub CommandButton2_Click()
Dim Message As String
Message = InputBox('Quel est le numéro du bordereau à annuler ?', _
'microsoft excel', '')
If Message = '' Then
Exit Sub
Else
Workbooks('classeur1').Sheets(Message).Select
End Sub

Le message d'erreur me dis que
Workbooks('classeur1').Sheets(Message).Select
n'appartient pas à la selection... 😱
 
Re:vbno then exit sub / range = nom d'une sheet

Bonsoir,

sur cette instruction --> Workbooks('classeur1').Sheets(Message).Select

cela devrait être --> Workbooks('classeur1').Sheets('Message').Select

avec Message = le nom d'une feuille

😉
 
Re:vbno then exit sub / range = nom d'une sheet

Re

soit tu as une erreur dans le nom de ton classeur soit dans le nom de ta feuille

donc la variable message correspond-t-elle vraiment au nom d'une feuille existante dans un classeur qui s'appellerait classeur1 ???

sinon si ton classeur1 n'est pas le classeur actif essaies comme ceci

Workbooks('Classeur1').Activate
Sheets('Feuil1').Select


Bonne journée

Message édité par: Pascal76, à: 03/06/2005 08:23
 
Re:vbno then exit sub / range = nom d'une sheet

Je vais finir par m'arracher les cheveux ... :sick:
J'y arrive poooooo !!!!

Je vous met mes 2 classeurs en pièce jointes.
J'ai bon espoir que vous me trouviez une solus..
Moi j'en peu plus. A mon (tout petit) stade de connaissances je jette l'éponge.
🙁
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
7
Affichages
825
Réponses
7
Affichages
985
Réponses
2
Affichages
361
Réponses
5
Affichages
744
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…