Problème cration macro
Résolu
Guigui13200
Messages postés
133
Statut
Membre
-
zoren8 Messages postés 55 Statut Membre -
zoren8 Messages postés 55 Statut Membre -
Bonjour,
J'ai voulu créer un tableau excel dans lequel je rentre mes comptes. J'ai créer une macro me permettant de ranger mes dépenses et mes crédit par date puis par libellé.En clair j'ai fais le même tableau avec la même mise en page dans tous les onglets qui corresppondent aux 12mois de l'année. Le problème et que j'ai créer cette macro dans l'onglet intitulé Aout 08 et du coup cette macro ne fonctionne que dans cette onglet.J'ai créer cette macro à l'aide de la fonction "enregistrer une macro". Alors j'attend votre aide. Je suis sous excel 2007. En vous remerciant.
PS: copie de ma macro:
Sub Tri()
'
' Tri Macro
'
'
Range("A2:D67").Select
ActiveWorkbook.Worksheets("Aout 08").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Aout 08").Sort.SortFields.Add Key:=Range("A2:A67") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Aout 08").Sort.SortFields.Add Key:=Range("B2:B67") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Aout 08").Sort
.SetRange Range("A2:D67")
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub
J'ai voulu créer un tableau excel dans lequel je rentre mes comptes. J'ai créer une macro me permettant de ranger mes dépenses et mes crédit par date puis par libellé.En clair j'ai fais le même tableau avec la même mise en page dans tous les onglets qui corresppondent aux 12mois de l'année. Le problème et que j'ai créer cette macro dans l'onglet intitulé Aout 08 et du coup cette macro ne fonctionne que dans cette onglet.J'ai créer cette macro à l'aide de la fonction "enregistrer une macro". Alors j'attend votre aide. Je suis sous excel 2007. En vous remerciant.
PS: copie de ma macro:
Sub Tri()
'
' Tri Macro
'
'
Range("A2:D67").Select
ActiveWorkbook.Worksheets("Aout 08").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Aout 08").Sort.SortFields.Add Key:=Range("A2:A67") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Aout 08").Sort.SortFields.Add Key:=Range("B2:B67") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Aout 08").Sort
.SetRange Range("A2:D67")
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub
A voir également:
- Problème cration macro
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Télécharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Jitbit macro recorder - Télécharger - Confidentialité
- Macro maker - Télécharger - Divers Utilitaires
- Actiona macro - Télécharger - Divers Utilitaires
6 réponses
Bonsoir,
Si mes souvenirs sont bons, en écrivant ceci, je pense que cela doit fonctionner :
Sub Tri()
For i = 1 To Sheets.Count
Range("A2:D67").Select
Sheets(i).Sort.SortFields.Clear
Sheets(i).Sort.SortFields.Add Key:=Range("A2:A67") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
Sheets(i).Sort.SortFields.Add Key:=Range("B2:B67") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With Sheets(i).Sort
.SetRange Range("A2:D67")
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Next iEnd Sub
Si mes souvenirs sont bons, en écrivant ceci, je pense que cela doit fonctionner :
Sub Tri()
For i = 1 To Sheets.Count
Range("A2:D67").Select
Sheets(i).Sort.SortFields.Clear
Sheets(i).Sort.SortFields.Add Key:=Range("A2:A67") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
Sheets(i).Sort.SortFields.Add Key:=Range("B2:B67") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With Sheets(i).Sort
.SetRange Range("A2:D67")
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Next iEnd Sub
Bonjour,
Utilise une boucle du style
For i = 1 To Sheets.Count
Ton application avec i étant l'index de ta feuille
Next i
Utilise une boucle du style
For i = 1 To Sheets.Count
Ton application avec i étant l'index de ta feuille
Next i
Salut,
Par contre je ne suis pas expert en macro. Il faudrait que je l'écrive où cette boucle? Merci de ta réponse
Par contre je ne suis pas expert en macro. Il faudrait que je l'écrive où cette boucle? Merci de ta réponse
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question