Dans un fichier d'enregistrement permettant l'élaboration des déclarations
de TVA, j'ai une barre
d'outils qui se crée à chaque ouverture de ce fichier.
Le premier bouton est un popup (msoControlPopup) intitulé (Caption)
"SAISIE".
A l'aide d'une boucle, je crée les 12 boutons (msoControlButton)
correspondant aux 12 mois de l'année.
Le "onAction" de chacun de ces boutons permet d'accéder à la colonne du mois
concerné de la feuille "SAISIE" "range("b4:m4")".
Pour ce faire, j'ai actuellement 12 macros.
Cela fonctionne parfaitement, cependant, je souhaiterais alléger mes
modules.
Il y a certainement un moyen de ne créer qu'une seule macro de déplacement
qui récupérerait le caption du bouton appelant et permettrait le
positionnement sur la colonne du mois concerné.
J'essaie de m'inspirer d'une réponse que m'avait faite en son temps
l'excellent excelien Frédéric Sigonneau (à propos d'un déplacement sur des
feuilles différentes), mais je ne m'en sors pas.
Je n'arrive pas non plus à apprivoiser l'exemple donné dans l'aide VBA pour
"Find".
Je pense à quelque chose comme :
Sub Déplacement()
ColMois = Application.CommandBars.ActionControl.Caption
Sheets("saisie").Visible = True
Sheets("saisie").Select
With ActiveSheet.Range("B4:M4")
Set ColMois = .Find(ColMois, LookIn:=xlFormulas)
End With
ActiveCell.Offset(2,0).Select
Application.Goto reference:=ActiveCell, scroll:=True
End Sub
Dans un fichier d'enregistrement permettant l'élaboration des déclarations de TVA, j'ai une barre d'outils qui se crée à chaque ouverture de ce fichier. Le premier bouton est un popup (msoControlPopup) intitulé (Caption) "SAISIE". A l'aide d'une boucle, je crée les 12 boutons (msoControlButton) correspondant aux 12 mois de l'année. Le "onAction" de chacun de ces boutons permet d'accéder à la colonne du mois concerné de la feuille "SAISIE" "range("b4:m4")". Pour ce faire, j'ai actuellement 12 macros. Cela fonctionne parfaitement, cependant, je souhaiterais alléger mes modules. Il y a certainement un moyen de ne créer qu'une seule macro de déplacement qui récupérerait le caption du bouton appelant et permettrait le positionnement sur la colonne du mois concerné. J'essaie de m'inspirer d'une réponse que m'avait faite en son temps l'excellent excelien Frédéric Sigonneau (à propos d'un déplacement sur des feuilles différentes), mais je ne m'en sors pas. Je n'arrive pas non plus à apprivoiser l'exemple donné dans l'aide VBA pour "Find".
Je pense à quelque chose comme :
Sub Déplacement() ColMois = Application.CommandBars.ActionControl.Caption Sheets("saisie").Visible = True Sheets("saisie").Select With ActiveSheet.Range("B4:M4") Set ColMois = .Find(ColMois, LookIn:=xlFormulas) End With ActiveCell.Offset(2,0).Select Application.Goto reference:¬tiveCell, scroll:=True End Sub
Mais cela ne fonctionne pas.
Je travaille avec Excel XP sous Windows XP
Merci d'avance de vos suggestions.
Bien amicalement
Michel
Bonjour,
Tu pourrais essayer ceci :
Sub Déplacement()
Application.Goto Range("B4")(, CommandBars.ActionControl.Index), True
End Sub
Dans un fichier d'enregistrement permettant l'élaboration des déclarations
de TVA, j'ai une barre
d'outils qui se crée à chaque ouverture de ce fichier.
Le premier bouton est un popup (msoControlPopup) intitulé (Caption)
"SAISIE".
A l'aide d'une boucle, je crée les 12 boutons (msoControlButton)
correspondant aux 12 mois de l'année.
Le "onAction" de chacun de ces boutons permet d'accéder à la colonne du mois
concerné de la feuille "SAISIE" "range("b4:m4")".
Pour ce faire, j'ai actuellement 12 macros.
Cela fonctionne parfaitement, cependant, je souhaiterais alléger mes
modules.
Il y a certainement un moyen de ne créer qu'une seule macro de déplacement
qui récupérerait le caption du bouton appelant et permettrait le
positionnement sur la colonne du mois concerné.
J'essaie de m'inspirer d'une réponse que m'avait faite en son temps
l'excellent excelien Frédéric Sigonneau (à propos d'un déplacement sur des
feuilles différentes), mais je ne m'en sors pas.
Je n'arrive pas non plus à apprivoiser l'exemple donné dans l'aide VBA pour
"Find".
Je pense à quelque chose comme :
Sub Déplacement()
ColMois = Application.CommandBars.ActionControl.Caption
Sheets("saisie").Visible = True
Sheets("saisie").Select
With ActiveSheet.Range("B4:M4")
Set ColMois = .Find(ColMois, LookIn:=xlFormulas)
End With
ActiveCell.Offset(2,0).Select
Application.Goto reference:¬tiveCell, scroll:=True
End Sub
Dans un fichier d'enregistrement permettant l'élaboration des déclarations de TVA, j'ai une barre d'outils qui se crée à chaque ouverture de ce fichier. Le premier bouton est un popup (msoControlPopup) intitulé (Caption) "SAISIE". A l'aide d'une boucle, je crée les 12 boutons (msoControlButton) correspondant aux 12 mois de l'année. Le "onAction" de chacun de ces boutons permet d'accéder à la colonne du mois concerné de la feuille "SAISIE" "range("b4:m4")". Pour ce faire, j'ai actuellement 12 macros. Cela fonctionne parfaitement, cependant, je souhaiterais alléger mes modules. Il y a certainement un moyen de ne créer qu'une seule macro de déplacement qui récupérerait le caption du bouton appelant et permettrait le positionnement sur la colonne du mois concerné. J'essaie de m'inspirer d'une réponse que m'avait faite en son temps l'excellent excelien Frédéric Sigonneau (à propos d'un déplacement sur des feuilles différentes), mais je ne m'en sors pas. Je n'arrive pas non plus à apprivoiser l'exemple donné dans l'aide VBA pour "Find".
Je pense à quelque chose comme :
Sub Déplacement() ColMois = Application.CommandBars.ActionControl.Caption Sheets("saisie").Visible = True Sheets("saisie").Select With ActiveSheet.Range("B4:M4") Set ColMois = .Find(ColMois, LookIn:=xlFormulas) End With ActiveCell.Offset(2,0).Select Application.Goto reference:¬tiveCell, scroll:=True End Sub
Mais cela ne fonctionne pas.
Je travaille avec Excel XP sous Windows XP
Merci d'avance de vos suggestions.
Bien amicalement
Michel
mperoche
Ribouldingue,
Mille mercis, cela fonctionne parfaitement bien.
Bien amicalement
Michel
"Ribouldingue" a écrit dans le message de news:
Bonjour,
Tu pourrais essayer ceci :
Sub Déplacement() Application.Goto Range("B4")(, CommandBars.ActionControl.Index), True End Sub
Dans un fichier d'enregistrement permettant l'élaboration des déclarations
de TVA, j'ai une barre d'outils qui se crée à chaque ouverture de ce fichier. Le premier bouton est un popup (msoControlPopup) intitulé (Caption) "SAISIE". A l'aide d'une boucle, je crée les 12 boutons (msoControlButton) correspondant aux 12 mois de l'année. Le "onAction" de chacun de ces boutons permet d'accéder à la colonne du mois
concerné de la feuille "SAISIE" "range("b4:m4")". Pour ce faire, j'ai actuellement 12 macros. Cela fonctionne parfaitement, cependant, je souhaiterais alléger mes modules. Il y a certainement un moyen de ne créer qu'une seule macro de déplacement
qui récupérerait le caption du bouton appelant et permettrait le positionnement sur la colonne du mois concerné. J'essaie de m'inspirer d'une réponse que m'avait faite en son temps l'excellent excelien Frédéric Sigonneau (à propos d'un déplacement sur des
feuilles différentes), mais je ne m'en sors pas. Je n'arrive pas non plus à apprivoiser l'exemple donné dans l'aide VBA pour
"Find".
Je pense à quelque chose comme :
Sub Déplacement() ColMois = Application.CommandBars.ActionControl.Caption Sheets("saisie").Visible = True Sheets("saisie").Select With ActiveSheet.Range("B4:M4") Set ColMois = .Find(ColMois, LookIn:=xlFormulas) End With ActiveCell.Offset(2,0).Select Application.Goto reference:¬tiveCell, scroll:=True End Sub
Mais cela ne fonctionne pas.
Je travaille avec Excel XP sous Windows XP
Merci d'avance de vos suggestions.
Bien amicalement
Michel
Ribouldingue,
Mille mercis, cela fonctionne parfaitement bien.
Bien amicalement
Michel
"Ribouldingue" <nospam@free.fr> a écrit dans le message de
news:3F856D5D.DEEE5178@free.fr...
Bonjour,
Tu pourrais essayer ceci :
Sub Déplacement()
Application.Goto Range("B4")(, CommandBars.ActionControl.Index), True
End Sub
Dans un fichier d'enregistrement permettant l'élaboration des
déclarations
de TVA, j'ai une barre
d'outils qui se crée à chaque ouverture de ce fichier.
Le premier bouton est un popup (msoControlPopup) intitulé (Caption)
"SAISIE".
A l'aide d'une boucle, je crée les 12 boutons (msoControlButton)
correspondant aux 12 mois de l'année.
Le "onAction" de chacun de ces boutons permet d'accéder à la colonne du
mois
concerné de la feuille "SAISIE" "range("b4:m4")".
Pour ce faire, j'ai actuellement 12 macros.
Cela fonctionne parfaitement, cependant, je souhaiterais alléger mes
modules.
Il y a certainement un moyen de ne créer qu'une seule macro de
déplacement
qui récupérerait le caption du bouton appelant et permettrait le
positionnement sur la colonne du mois concerné.
J'essaie de m'inspirer d'une réponse que m'avait faite en son temps
l'excellent excelien Frédéric Sigonneau (à propos d'un déplacement sur
des
feuilles différentes), mais je ne m'en sors pas.
Je n'arrive pas non plus à apprivoiser l'exemple donné dans l'aide VBA
pour
"Find".
Je pense à quelque chose comme :
Sub Déplacement()
ColMois = Application.CommandBars.ActionControl.Caption
Sheets("saisie").Visible = True
Sheets("saisie").Select
With ActiveSheet.Range("B4:M4")
Set ColMois = .Find(ColMois, LookIn:=xlFormulas)
End With
ActiveCell.Offset(2,0).Select
Application.Goto reference:¬tiveCell, scroll:=True
End Sub
Dans un fichier d'enregistrement permettant l'élaboration des déclarations
de TVA, j'ai une barre d'outils qui se crée à chaque ouverture de ce fichier. Le premier bouton est un popup (msoControlPopup) intitulé (Caption) "SAISIE". A l'aide d'une boucle, je crée les 12 boutons (msoControlButton) correspondant aux 12 mois de l'année. Le "onAction" de chacun de ces boutons permet d'accéder à la colonne du mois
concerné de la feuille "SAISIE" "range("b4:m4")". Pour ce faire, j'ai actuellement 12 macros. Cela fonctionne parfaitement, cependant, je souhaiterais alléger mes modules. Il y a certainement un moyen de ne créer qu'une seule macro de déplacement
qui récupérerait le caption du bouton appelant et permettrait le positionnement sur la colonne du mois concerné. J'essaie de m'inspirer d'une réponse que m'avait faite en son temps l'excellent excelien Frédéric Sigonneau (à propos d'un déplacement sur des
feuilles différentes), mais je ne m'en sors pas. Je n'arrive pas non plus à apprivoiser l'exemple donné dans l'aide VBA pour
"Find".
Je pense à quelque chose comme :
Sub Déplacement() ColMois = Application.CommandBars.ActionControl.Caption Sheets("saisie").Visible = True Sheets("saisie").Select With ActiveSheet.Range("B4:M4") Set ColMois = .Find(ColMois, LookIn:=xlFormulas) End With ActiveCell.Offset(2,0).Select Application.Goto reference:¬tiveCell, scroll:=True End Sub