Nouveau sur VB

Résolu/Fermé
clearize - 10 oct. 2008 à 12:11
 clearize - 10 oct. 2008 à 13:48
Bonjour à tous,

J'essaye desesperement de faire une macro mais je n'y arrive pas.

Ce que je veux c'est qu'en appuyant sur un bouton situé sur la feuille "Résultats hebdomadaire", il vienne sur la feuille "saisie fabrications", qu'il libere les volets, qu'il deverouille la feuille. Après ça, j'aimerai qu'il selectionne, les cellules de S2 à S3500, qu'il les copie, et qu'il fasse un collage en valeurs sur les cellules AG2 à AG3500. Ensuite il faudrait qu'il fasse un classement en ordre croissant sur les cellules AG2 AG3500. Pour finir, je voudrai qu'il refige les volets et reverouille la feuille, puis qu'il retourne sur la feuille "Résultats hebdomadaire", là où se trouve le bouton.

Voilà ce que j'ai essayé mais il m'envoie un message d'erreur suivant:

'Erreur d'éxucution '1004'
La méthode select de la classe Range a échoué

Private Sub CommandButton1_Click()

Sheets("Saisie Fabrications").Select
ActiveWindow.FreezePanes = False
ActiveSheet.Unprotect
ActiveWindow.SmallScroll ToRight:=11
Range("Y274").Select
ActiveWindow.SmallScroll Down:=-21
ActiveWindow.ScrollRow = 1
Range("W1").Select
ActiveWindow.SmallScroll ToRight:=3
Range("S2:S3500").Select
Selection.Copy
ActiveWindow.SmallScroll ToRight:=5
Range("AG2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Selection.Sort Key1:=Range("AG2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Range("AE26").Select
ActiveWindow.SmallScroll ToRight:=-19
Range("O2").Select
ActiveWindow.SmallScroll ToRight:=-3
ActiveWindow.FreezePanes = True
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Sheets("Resultats hebdomadaire").Select

End Sub

Quelqu'un peut-il m'aider

Merci d'avance
A voir également:

4 réponses

Sur la ligne
Range("Y274").select
0
Super, ca marche

Merci bcp lermite 222
0
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
10 oct. 2008 à 12:21
Bonjour,

Sur quelle ligne apparaît le message d'erreur ?

;o)
-1
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
10 oct. 2008 à 13:38
Bonjour,
1°) tu peu déja virer tout les ActiveWindow.SmallScroll y servent à rien dans la macro.
2°) Pas nécessaire de libérer les volets donc pas besoin de les remettre
3°) Ta macro est dans l'événement clic d'un bouton, donc sur un module de feuille
Tu doit mettre toute la macro dans un module général (Module1 par exemple, sous un nom FaireAction par exemple
et dans l'événement du bouton mettre

Private Sub CommandButton1_Click() 
  call FaireAction()
end sub


Tu dit si encore problème,
A+
-1