J'utilise un form avec une combo bas=E9 sur des cellules.
Je souhaite dans le cas du choix 2 fermer mon form et=20
afficher le formulaire de saisie Excel (ShowDataForm) Mais=20
j'ai l'erreur:
Erreur d'ex=E9cution: 1004
La m=E9thode ShowDataForm de la classe Worksheet a =E9chou=E9
J'ai ce code:
Sub ListChoix()
Sheets("Gestion").Activate
Select Case Range("B1")
Case 1
Sheets("Accueil").Activate
Case 2
Sheets("CtrlMenu").Hide
Sheets("Module").Activate
Range("A2").Select
ActiveSheet.ShowDataForm
Sheets("Accueil").Select
Case 3
Sheets("Module").Activate
Range("A1").Select
Case 4
Sheets("Module").Activate
Range("A1").Select
End Select
End Sub
Sub Menu()
Set wsr =3D ActiveSheet
Sheets("Gestion").Select
Range("B1") =3D "0"
wsr.Select
Sheets("CtrlMenu").Show
End Sub
En fait il faudrait que j'arrive =E0 faire un Cancel sur mon=20
form de gestion, mais comment?
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 Thierry,
Voici une façon de faire tiré de l'excellent bouquin mentionné dans la procédure :
Modifie le Case 2 comme ceci :
Case 2 Sheets("CtrlMenu").Hide Sheets("Module").Activate 'Tu dois d'abord sélectionner la feuille contenant les données Sheets("MesDonnées").select RunMenu 860 'Appel Procédure de John Green Range("A2").Select ActiveSheet.ShowDataForm Sheets("Accueil").Select
'------------------------------------------------ Sub RunMenu(iMenuID As Long) 'Proposed By John Green and Stephen Bullen 'Book : Excel 2003 VBA Programmer's Reference ' ***************************************************** ' * Function Name: RunMenu ' * ' * Input/Output: iMenuID - The control ID of the menu item to be run. ' * ' * Purpose: Runs a specified menu item, simulating clicking on it. ' * ' ***************************************************** Dim oCtrl As CommandBarButton 'Ignore any errors (such as the menu ID not valid). On Error Resume Next 'Create our own temporary commandbar to hold the control. With Application.CommandBars.Add ' Add the control and execute it. .Controls.Add(ID:=iMenuID).Execute ' Then delete our temporary menu bar. .Delete End With End Sub '------------------------------------------------
Salutations!
"Thierry" a écrit dans le message de news: 19ce01c50f99$29b0c230$ Bonjour,
J'utilise un form avec une combo basé sur des cellules.
Je souhaite dans le cas du choix 2 fermer mon form et afficher le formulaire de saisie Excel (ShowDataForm) Mais j'ai l'erreur: Erreur d'exécution: 1004 La méthode ShowDataForm de la classe Worksheet a échoué
J'ai ce code: Sub ListChoix() Sheets("Gestion").Activate Select Case Range("B1") Case 1 Sheets("Accueil").Activate Case 2 Sheets("CtrlMenu").Hide Sheets("Module").Activate Range("A2").Select ActiveSheet.ShowDataForm Sheets("Accueil").Select Case 3 Sheets("Module").Activate Range("A1").Select Case 4 Sheets("Module").Activate Range("A1").Select End Select End Sub Sub Menu() Set wsr = ActiveSheet Sheets("Gestion").Select Range("B1") = "0" wsr.Select Sheets("CtrlMenu").Show End Sub
En fait il faudrait que j'arrive à faire un Cancel sur mon form de gestion, mais comment?
Amicalement Thierry
Bonjour Thierry,
Voici une façon de faire tiré de l'excellent bouquin mentionné dans la procédure :
Modifie le Case 2 comme ceci :
Case 2
Sheets("CtrlMenu").Hide
Sheets("Module").Activate
'Tu dois d'abord sélectionner la feuille contenant les données
Sheets("MesDonnées").select
RunMenu 860 'Appel Procédure de John Green
Range("A2").Select
ActiveSheet.ShowDataForm
Sheets("Accueil").Select
'------------------------------------------------
Sub RunMenu(iMenuID As Long)
'Proposed By John Green and Stephen Bullen
'Book : Excel 2003 VBA Programmer's Reference
' *****************************************************
' * Function Name: RunMenu
' *
' * Input/Output: iMenuID - The control ID of the menu item to be run.
' *
' * Purpose: Runs a specified menu item, simulating clicking on it.
' *
' *****************************************************
Dim oCtrl As CommandBarButton
'Ignore any errors (such as the menu ID not valid).
On Error Resume Next
'Create our own temporary commandbar to hold the control.
With Application.CommandBars.Add
' Add the control and execute it.
.Controls.Add(ID:=iMenuID).Execute
' Then delete our temporary menu bar.
.Delete
End With
End Sub
'------------------------------------------------
Salutations!
"Thierry" <anonymous@discussions.microsoft.com> a écrit dans le message de news:
19ce01c50f99$29b0c230$a601280a@phx.gbl...
Bonjour,
J'utilise un form avec une combo basé sur des cellules.
Je souhaite dans le cas du choix 2 fermer mon form et
afficher le formulaire de saisie Excel (ShowDataForm) Mais
j'ai l'erreur:
Erreur d'exécution: 1004
La méthode ShowDataForm de la classe Worksheet a échoué
J'ai ce code:
Sub ListChoix()
Sheets("Gestion").Activate
Select Case Range("B1")
Case 1
Sheets("Accueil").Activate
Case 2
Sheets("CtrlMenu").Hide
Sheets("Module").Activate
Range("A2").Select
ActiveSheet.ShowDataForm
Sheets("Accueil").Select
Case 3
Sheets("Module").Activate
Range("A1").Select
Case 4
Sheets("Module").Activate
Range("A1").Select
End Select
End Sub
Sub Menu()
Set wsr = ActiveSheet
Sheets("Gestion").Select
Range("B1") = "0"
wsr.Select
Sheets("CtrlMenu").Show
End Sub
En fait il faudrait que j'arrive à faire un Cancel sur mon
form de gestion, mais comment?
Voici une façon de faire tiré de l'excellent bouquin mentionné dans la procédure :
Modifie le Case 2 comme ceci :
Case 2 Sheets("CtrlMenu").Hide Sheets("Module").Activate 'Tu dois d'abord sélectionner la feuille contenant les données Sheets("MesDonnées").select RunMenu 860 'Appel Procédure de John Green Range("A2").Select ActiveSheet.ShowDataForm Sheets("Accueil").Select
'------------------------------------------------ Sub RunMenu(iMenuID As Long) 'Proposed By John Green and Stephen Bullen 'Book : Excel 2003 VBA Programmer's Reference ' ***************************************************** ' * Function Name: RunMenu ' * ' * Input/Output: iMenuID - The control ID of the menu item to be run. ' * ' * Purpose: Runs a specified menu item, simulating clicking on it. ' * ' ***************************************************** Dim oCtrl As CommandBarButton 'Ignore any errors (such as the menu ID not valid). On Error Resume Next 'Create our own temporary commandbar to hold the control. With Application.CommandBars.Add ' Add the control and execute it. .Controls.Add(ID:=iMenuID).Execute ' Then delete our temporary menu bar. .Delete End With End Sub '------------------------------------------------
Salutations!
"Thierry" a écrit dans le message de news: 19ce01c50f99$29b0c230$ Bonjour,
J'utilise un form avec une combo basé sur des cellules.
Je souhaite dans le cas du choix 2 fermer mon form et afficher le formulaire de saisie Excel (ShowDataForm) Mais j'ai l'erreur: Erreur d'exécution: 1004 La méthode ShowDataForm de la classe Worksheet a échoué
J'ai ce code: Sub ListChoix() Sheets("Gestion").Activate Select Case Range("B1") Case 1 Sheets("Accueil").Activate Case 2 Sheets("CtrlMenu").Hide Sheets("Module").Activate Range("A2").Select ActiveSheet.ShowDataForm Sheets("Accueil").Select Case 3 Sheets("Module").Activate Range("A1").Select Case 4 Sheets("Module").Activate Range("A1").Select End Select End Sub Sub Menu() Set wsr = ActiveSheet Sheets("Gestion").Select Range("B1") = "0" wsr.Select Sheets("CtrlMenu").Show End Sub
En fait il faudrait que j'arrive à faire un Cancel sur mon form de gestion, mais comment?
Amicalement Thierry
MichDenis
Correction : C'est parti trop vite .... ! ;-))
Case 2 Sheets("CtrlMenu").Hide Sheets("Module").Activate 'Tu dois d'abord sélectionner la feuille contenant les données Sheets("MesDonnées").select 'Feuille à déterminer Range("A2").Select RunMenu 860 'Appel Procédure de John Green Sheets("Accueil").Select
Salutations!
"MichDenis" a écrit dans le message de news: % Bonjour Thierry,
Voici une façon de faire tiré de l'excellent bouquin mentionné dans la procédure :
Modifie le Case 2 comme ceci :
Case 2 Sheets("CtrlMenu").Hide Sheets("Module").Activate 'Tu dois d'abord sélectionner la feuille contenant les données Sheets("MesDonnées").select RunMenu 860 'Appel Procédure de John Green Range("A2").Select ActiveSheet.ShowDataForm Sheets("Accueil").Select
'------------------------------------------------ Sub RunMenu(iMenuID As Long) 'Proposed By John Green and Stephen Bullen 'Book : Excel 2003 VBA Programmer's Reference ' ***************************************************** ' * Function Name: RunMenu ' * ' * Input/Output: iMenuID - The control ID of the menu item to be run. ' * ' * Purpose: Runs a specified menu item, simulating clicking on it. ' * ' ***************************************************** Dim oCtrl As CommandBarButton 'Ignore any errors (such as the menu ID not valid). On Error Resume Next 'Create our own temporary commandbar to hold the control. With Application.CommandBars.Add ' Add the control and execute it. .Controls.Add(ID:=iMenuID).Execute ' Then delete our temporary menu bar. .Delete End With End Sub '------------------------------------------------
Salutations!
"Thierry" a écrit dans le message de news: 19ce01c50f99$29b0c230$ Bonjour,
J'utilise un form avec une combo basé sur des cellules.
Je souhaite dans le cas du choix 2 fermer mon form et afficher le formulaire de saisie Excel (ShowDataForm) Mais j'ai l'erreur: Erreur d'exécution: 1004 La méthode ShowDataForm de la classe Worksheet a échoué
J'ai ce code: Sub ListChoix() Sheets("Gestion").Activate Select Case Range("B1") Case 1 Sheets("Accueil").Activate Case 2 Sheets("CtrlMenu").Hide Sheets("Module").Activate Range("A2").Select ActiveSheet.ShowDataForm Sheets("Accueil").Select Case 3 Sheets("Module").Activate Range("A1").Select Case 4 Sheets("Module").Activate Range("A1").Select End Select End Sub Sub Menu() Set wsr = ActiveSheet Sheets("Gestion").Select Range("B1") = "0" wsr.Select Sheets("CtrlMenu").Show End Sub
En fait il faudrait que j'arrive à faire un Cancel sur mon form de gestion, mais comment?
Amicalement Thierry
Correction : C'est parti trop vite .... ! ;-))
Case 2
Sheets("CtrlMenu").Hide
Sheets("Module").Activate
'Tu dois d'abord sélectionner la feuille contenant les données
Sheets("MesDonnées").select 'Feuille à déterminer
Range("A2").Select
RunMenu 860 'Appel Procédure de John Green
Sheets("Accueil").Select
Salutations!
"MichDenis" <michdenis@hotmail.com> a écrit dans le message de news: %23jFjya6DFHA.3944@tk2msftngp13.phx.gbl...
Bonjour Thierry,
Voici une façon de faire tiré de l'excellent bouquin mentionné dans la procédure :
Modifie le Case 2 comme ceci :
Case 2
Sheets("CtrlMenu").Hide
Sheets("Module").Activate
'Tu dois d'abord sélectionner la feuille contenant les données
Sheets("MesDonnées").select
RunMenu 860 'Appel Procédure de John Green
Range("A2").Select
ActiveSheet.ShowDataForm
Sheets("Accueil").Select
'------------------------------------------------
Sub RunMenu(iMenuID As Long)
'Proposed By John Green and Stephen Bullen
'Book : Excel 2003 VBA Programmer's Reference
' *****************************************************
' * Function Name: RunMenu
' *
' * Input/Output: iMenuID - The control ID of the menu item to be run.
' *
' * Purpose: Runs a specified menu item, simulating clicking on it.
' *
' *****************************************************
Dim oCtrl As CommandBarButton
'Ignore any errors (such as the menu ID not valid).
On Error Resume Next
'Create our own temporary commandbar to hold the control.
With Application.CommandBars.Add
' Add the control and execute it.
.Controls.Add(ID:=iMenuID).Execute
' Then delete our temporary menu bar.
.Delete
End With
End Sub
'------------------------------------------------
Salutations!
"Thierry" <anonymous@discussions.microsoft.com> a écrit dans le message de news:
19ce01c50f99$29b0c230$a601280a@phx.gbl...
Bonjour,
J'utilise un form avec une combo basé sur des cellules.
Je souhaite dans le cas du choix 2 fermer mon form et
afficher le formulaire de saisie Excel (ShowDataForm) Mais
j'ai l'erreur:
Erreur d'exécution: 1004
La méthode ShowDataForm de la classe Worksheet a échoué
J'ai ce code:
Sub ListChoix()
Sheets("Gestion").Activate
Select Case Range("B1")
Case 1
Sheets("Accueil").Activate
Case 2
Sheets("CtrlMenu").Hide
Sheets("Module").Activate
Range("A2").Select
ActiveSheet.ShowDataForm
Sheets("Accueil").Select
Case 3
Sheets("Module").Activate
Range("A1").Select
Case 4
Sheets("Module").Activate
Range("A1").Select
End Select
End Sub
Sub Menu()
Set wsr = ActiveSheet
Sheets("Gestion").Select
Range("B1") = "0"
wsr.Select
Sheets("CtrlMenu").Show
End Sub
En fait il faudrait que j'arrive à faire un Cancel sur mon
form de gestion, mais comment?
Case 2 Sheets("CtrlMenu").Hide Sheets("Module").Activate 'Tu dois d'abord sélectionner la feuille contenant les données Sheets("MesDonnées").select 'Feuille à déterminer Range("A2").Select RunMenu 860 'Appel Procédure de John Green Sheets("Accueil").Select
Salutations!
"MichDenis" a écrit dans le message de news: % Bonjour Thierry,
Voici une façon de faire tiré de l'excellent bouquin mentionné dans la procédure :
Modifie le Case 2 comme ceci :
Case 2 Sheets("CtrlMenu").Hide Sheets("Module").Activate 'Tu dois d'abord sélectionner la feuille contenant les données Sheets("MesDonnées").select RunMenu 860 'Appel Procédure de John Green Range("A2").Select ActiveSheet.ShowDataForm Sheets("Accueil").Select
'------------------------------------------------ Sub RunMenu(iMenuID As Long) 'Proposed By John Green and Stephen Bullen 'Book : Excel 2003 VBA Programmer's Reference ' ***************************************************** ' * Function Name: RunMenu ' * ' * Input/Output: iMenuID - The control ID of the menu item to be run. ' * ' * Purpose: Runs a specified menu item, simulating clicking on it. ' * ' ***************************************************** Dim oCtrl As CommandBarButton 'Ignore any errors (such as the menu ID not valid). On Error Resume Next 'Create our own temporary commandbar to hold the control. With Application.CommandBars.Add ' Add the control and execute it. .Controls.Add(ID:=iMenuID).Execute ' Then delete our temporary menu bar. .Delete End With End Sub '------------------------------------------------
Salutations!
"Thierry" a écrit dans le message de news: 19ce01c50f99$29b0c230$ Bonjour,
J'utilise un form avec une combo basé sur des cellules.
Je souhaite dans le cas du choix 2 fermer mon form et afficher le formulaire de saisie Excel (ShowDataForm) Mais j'ai l'erreur: Erreur d'exécution: 1004 La méthode ShowDataForm de la classe Worksheet a échoué
J'ai ce code: Sub ListChoix() Sheets("Gestion").Activate Select Case Range("B1") Case 1 Sheets("Accueil").Activate Case 2 Sheets("CtrlMenu").Hide Sheets("Module").Activate Range("A2").Select ActiveSheet.ShowDataForm Sheets("Accueil").Select Case 3 Sheets("Module").Activate Range("A1").Select Case 4 Sheets("Module").Activate Range("A1").Select End Select End Sub Sub Menu() Set wsr = ActiveSheet Sheets("Gestion").Select Range("B1") = "0" wsr.Select Sheets("CtrlMenu").Show End Sub
En fait il faudrait que j'arrive à faire un Cancel sur mon form de gestion, mais comment?