erreur d'execution 1004

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

A

amel

Guest
Re le forum!

je suis confronté à une erreur d'execution 1004 : la methode select de la classe range a ecHoué...

Worksheets('2005').Select
Range('A1').Offset(2, 3).Select
Selection.Paste
 
Re le forum, slaut Hellboy,
voici donc le code...


Sub ref_month_janv5()

'garde le mois voulu janvier 2005
For x = 100 To 3 Step -1
If Format(CStr(cells(x, 1).Value), 'mmm-yy') <> 'janv-05' Then
cells(x, 1).EntireRow.Select
Selection.Delete Shift:=xlUp
End If
Next x

'calcul du nb ATO
Range('AE2').Select
Range('AE2').End(xlDown).Offset(1, 0).Value = '=SUM(AE2:' & Range('AE2').End(xlDown).Address & ')'
Range(ActiveCell, ActiveCell.End(xlToLeft)).Select
Selection.Copy
Worksheets('2005').Select
Range('A1').Offset(2, 3).Select
ActiveSheet.Paste


End Sub
 
re

essaie ceci:

Worksheets('2005').select
Worksheets('2005').Range('A1').Offset(2, 3).Select

Robert pourrait-peurt être confirmer, je crois aussi qu'il faut utiliser
Worksheets('2005').activate pour la ligne
activesheet.paste

et je crois aussi que remplacer Worksheets('2005').select par
Worksheets('2005').activate serais favorable.

Message édité par: Hellboy, à: 11/07/2005 16:25
 
Re le forum,
Hellboy: ça effectue bien la manip mais pas comme je le voudrais, ça copie la cellule A1, et non le resultat du calcul effectué :
Range('AE2').End(xlDown).Offset(1, 0).Value = '=SUM(AE2:' & Range('AE2').End(xlDown).Address & ')'
Range(ActiveCell, ActiveCell.End(xlToLeft)).Select
 
Bonjour le fil,

J'avais encore des bug alors je te porpose ça pour la deuxième partie de la macro:


'calcul du nb ATO
Range('AE2').End(xlDown).Offset(1, 0).Formula = '=SUM(AE2:AE' & Range('AE2').End(xlDown).Row & ')'
Range(Range('AE2'), Range('AE2').End(xlToLeft)).Copy
Worksheets('2005').Select
Range('D3').Select
ActiveSheet.Paste
 
re le fil

Range('AE2').End(xlDown).Offset(1, 0).Formula = '=SUM(AE2:AE' & Range('AE2').End(xlDown).Row & ')'

Range(Range('AE2'), Range('AE2').End(xlToLeft)).Copy Destination:=Worksheets('2005').Range('D3')

Tu peux faire la copie directemenrt de l'endroit ou tu te trouve sans devoir faire l'action de sélectionner une feuille différente.

bonne journée amel et Robert
 
re hellboy
ben justement le point sensible de situe la: dans la colonne D j'ai un certain nombre de 0 et de 1 (1 chiffre par cellule) dont je ne connais pas le nombre de cellule pleine dans la colonne D au total..dans la 1ere cellule vide de la colone D, je compte le nombre de '1' contenu dans la colonne D et cette dernière cellule (celle qui contient la somme des 1) est copié et collé dans la cellule(2,3) d'une autre feuille..
:woohoo:
 
- 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
7
Affichages
172
Réponses
9
Affichages
384
Retour