Problème cration macro

Résolu
Guigui13200 Messages postés 133 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
A voir également:

6 réponses

zoren8 Messages postés 55 Statut Membre 3
 
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
1
zoren8 Messages postés 55 Statut Membre 3
 
Bonjour,

Utilise une boucle du style

For i = 1 To Sheets.Count
Ton application avec i étant l'index de ta feuille
Next i
0
Guigui13200 Messages postés 133 Statut Membre 27
 
Salut,
Par contre je ne suis pas expert en macro. Il faudrait que je l'écrive où cette boucle? Merci de ta réponse
0
Guigui13200 Messages postés 133 Statut Membre 27
 
Salut Zoren8,
Je voulais te remercier de ton aide. ça fonctionne niquel!!!
Merci encore.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Guigui13200 Messages postés 133 Statut Membre 27
 
Merci bien Zoren8. Ca fonctionne niquel chrome!!!!
0
zoren8 Messages postés 55 Statut Membre 3
 
content de t'avoir aider. Tu peux flaguer comme étant résolu.
0