comment appellé une commande Ex : flèche une fois vers bas

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

T

Trinitybarb

Guest
Bonjour,

Je peux dire que je suis débutante en programmation VB sur Excel. Je réussi à faire des programmes en les enregistrant et des fois je les modifie manuellement mais pas trop.

Je me demandais et j'ai bien de la misère à trouver la réponse:

quand j'enregistre une macro et que je fais : Home et flèche bas une fois, VB enregistre le positionnement de la cellule ex : B3 mais moi je veux que ce soit HOME et FLECHE BAS une fois, comment programmer que l'on veut que le VB fase HOME et FLECHE.

Merci de votre aide.
 
Re : comment appellé une commande Ex : flèche une fois vers bas

Non ça ne fonctionne pas car je l'ai déjà essayé. J'ai lu à des endroits que ça devait être activer dans la feuille mais je me demandais si je pouvais le faire à partir de mon code ??

Voici mon code


Sub QuartileAll()

Call Quartile_1
Call Quartile_2

End Sub

Sub Quartile_1()
'
' Quartile_1 Macro
' Macro enregistrée le 18/09/2009 par F.C.D.Q.
'

'
Selection.AutoFilter Field:=2, Criteria1:="Q1"
Selection.AutoFilter Field:=1, Criteria1:="<40179", Operator:=xlAnd
Selection.End(xlToLeft).Select
Selection.End(xlUp).Select
ActiveCell.Offset(1, 1).Select
Range(Selection, Selection.End(xlDown)).Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.WrapText = True
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Selection.Merge
With Selection.Font
.Name = "Arial"
.Size = 20
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Selection.AutoFilter Field:=2
Selection.AutoFilter Field:=1
End Sub
Sub Quartile_2()
'
' Quartile_2 Macro
' Macro enregistrée le 18/09/2009 par F.C.D.Q.
'

'
Selection.AutoFilter Field:=2, Criteria1:="Q2"
Selection.AutoFilter Field:=1, Criteria1:="<40179", Operator:=xlAnd
Selection.End(xlToLeft).Select
Selection.End(xlUp).Select
ActiveCell.Offset(1, 1).Select
Range(Selection, Selection.End(xlDown)).Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.WrapText = True
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Selection.Merge
With Selection.Font
.Name = "Arial"
.Size = 20
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Selection.AutoFilter Field:=2
Selection.AutoFilter Field:=1
End Sub
 
Re : comment appellé une commande Ex : flèche une fois vers bas

Q1 ensemble Q2 ensemble et je vais également avoir Q3 et Q4. Ce sont des périodes (1er trimestre, 2e, 3e et 4e trimestre). Il y a des ajouts à chaque semaine dont la Q1 sera toujours sur la même ligne mais les autres seront sur des lignes différentes.
 
Re : comment appellé une commande Ex : flèche une fois vers bas

Bonjour,

essaye ça et dis-moi

Code:
Sub Quartile_1()
'
' Quartile_1 Macro
' Macro enregistrée le 18/09/2009 par F.C.D.Q.
'
'
Selection.AutoFilter Field:=2, Criteria1:="Q1"
Selection.AutoFilter Field:=1, Criteria1:="<40179", Operator:=xlAnd
SendKeys "^{HOME}", True
ActiveCell.Offset(0, 1).Select
Range(Selection, Selection.End(xlDown)).Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.WrapText = True
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Selection.Merge
With Selection.Font
.Name = "Arial"
.Size = 20
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Selection.AutoFilter Field:=2
Selection.AutoFilter Field:=1
End Sub
 
Re : comment appellé une commande Ex : flèche une fois vers bas

Allo,

Pour la première partie, ça fonctionne bien mais lorsque j'ajoute ensuite Q2 avec la même série de commande (sauf Q2 au lieu de Q1) pour fusionner ensemble les Q2, le curseur se met sur la colonne à coté du Q2 et il fusionne pas la bonne colonne.

Le Ctrl + home ne se met pas au bon endroit, il ne fonctionne pas.

🙁 😡
 
Re : comment appellé une commande Ex : flèche une fois vers bas

Re,

je ne comprends pas ça fonctionne chez moi.

Bon, maintenant, pourquoi ne pas remplacer

SendKeys "^{HOME}", True
ActiveCell.Offset(0, 1).Select


par

Range("B4").select

par exemple ?

la 1ere ligne de ta liste change souvent ?
 
Re : comment appellé une commande Ex : flèche une fois vers bas

Non la première ligne de ma liste reste toujours B4 mais c'est les autres lignes de Q2 qui seront jamais pareil également pour Q3 et Q4.

Quand je fais ton programme pour la première partie Q1 ça fonctionne super bien, c'est quand je continue en choisissant Q2 que là ça fonctionne plus....il ne se met pas au début du Q2 qui est le début de mon volet figer. Avec un volet figer, lorsqu'on fait ctrl+home, le curseur se met où le volet est figer et c'est cela que je voulais faire pour continuer mes fusions un en arrière de l'autre.
 
Re : comment appellé une commande Ex : flèche une fois vers bas

Re,

Bon, un autre essai en reprenant le code du début :

Code:
Sub Lance()
Dim i As Long
    For i = 1 To 4
    Quartile (i)
    Next i
End Sub
 
Sub Quartile(Numero As Long)
Dim derligne As Long
    Application.ScreenUpdating = False
    Range("A4").AutoFilter Field:=2, Criteria1:="Q" & Numero
    Range("A4").AutoFilter Field:=1, Criteria1:="<40179", Operator:=xlAnd
    derligne = Range("A65536").End(xlUp).Row
    Range("B5:B" & derligne).SpecialCells(xlCellTypeVisible).Select
    If derligne > 4 Then
    With Selection
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlCenter
        .WrapText = True
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
        End With
        Application.DisplayAlerts = False
        Selection.Merge
        Application.DisplayAlerts = True
        With Selection.Font
        .Name = "Arial"
        .Size = 20
        .Strikethrough = False
        .Superscript = False
        .Subscript = False
        .OutlineFont = False
        .Shadow = False
        .Underline = xlUnderlineStyleNone
        .ColorIndex = xlAutomatic
    End With
    End If
    ActiveSheet.ShowAllData
    Application.ScreenUpdating = True
End Sub
 
Re : comment appellé une commande Ex : flèche une fois vers bas

YOUPPIIIIII ça fonctionne et très bien c'est vraiment super.

Je ne sais comment te remercier. Si tu savais comment ça va sauver du temps à ma collègue de travaille. Je vais analyser ton code pour le comprendre.

Est-ce que je pourrais te poser des questions s'il y a un code que je ne comprends pas ??

Encore merci pour ton aide qui m'a été très précieuse.

bye bye
 
- 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
25
Affichages
1 K
Réponses
4
Affichages
921
L
Réponses
1
Affichages
1 K
Ludwig74
L
K
Réponses
0
Affichages
730
Kris022
K
P
Réponses
13
Affichages
2 K
pouns94
P
S
Réponses
6
Affichages
7 K
sarsargna
S
Retour