Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

erreur d'execution 1004

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

J

jul85

Guest
Bonjour on m'a aidé à créer une macro puis j'ai essayé de rajouter du code mais elle ne veut pas fonctionner :
Code:
Sub nouvellecategorie()
Dim x As Long
Dim y As Long
Dim w As Integer
Dim z As Integer


Application.ScreenUpdating = False
x = Sheets("source nv produit").Cells(65535, 1).End(xlUp)(2).Row
'x cellule vide en bas de colonne 1 sur feuille source nv prod
y = Sheets("Stock pâtisserie").Cells(65535, 6).End(xlUp)(2).Row
'y cellule vide en bas de colonne 6 sur feuille stock pâtisserie
w = Sheets("Stock pâtisserie").Cells(5, 16000).End(xlToLeft).Column
'w cellule vide a la fin de la ligne 5 sur feuille stock pâtisserie
z = Sheets("Stock pâtisserie").Cells(7, 16000).End(xlToLeft).Column
'z cellule vide a la fin de la ligne 7 sur feuille stock pâtisserie


With Sheets("Nouveau produit").Cells(13, 3)
.Copy Sheets("source nv produit").Cells(x, 1)
.Cut Sheets("Stock pâtisserie").Cells(y + 1, 6)
Cells(y + 1, 1).ClearContents

End With

Sheets("Stock pâtisserie").Select
Range(Cells(y + 1, 1), Cells(y + 1, w)).Interior.ColorIndex = 3 '<-- index couleur
Cells(y + 1, 7).FormulaR1C1 = "Unité"
Range(Cells(y + 1, 6), Cells(y + 1, 7)).Characters.Font.ColorIndex = 2
Range(Cells(y + 1, 6), Cells(y + 1, 7)).Characters.Font.Size = 8
Range(Cells(7, 2), Cells(7, z)).Copy Range(Cells(y + 2, 2), Cells(y + 2, z))
Range(Cells(y + 2, 2), Cells(y + 2, 7)).ClearContents
Range(Cells(6, 6), Cells(y, 7)).Copy Sheets("Perte pâtisserie").Range(Cells(5, 1), Cells(y + 5, 2))
Range(Cells(6, 6), Cells(y, 6)).Copy Sheets("Production journalière").Range(Cells(2, 1), Cells(y + 5, 1))
Range(Cells(6, 6), Cells(y, 6)).Copy Sheets("Commande journalière").Range(Cells(2, 1), Cells(y + 5, 1))
Range(Cells(6, 6), Cells(y, 6)).Copy Sheets("Perte").Range(Cells(2, 1), Cells(y + 5, 1))
Range(Cells(6, 7), Cells(y, 7)).Copy Sheets("Production journalière").Range(Cells(2, 3), Cells(y + 5, 3))
Range(Cells(6, 7), Cells(y, 7)).Copy Sheets("Commande journalière").Range(Cells(2, 3), Cells(y + 5, 3))
Range(Cells(6, 7), Cells(y, 7)).Copy Sheets("Perte").Range(Cells(2, 3), Cells(y + 5, 3))


Sheets("Nouveau produit").Activate
Application.ScreenUpdating = True
End Sub

Si quelqu'un peut m'aider à résoudre l'erreur 1004
et il est peut etre aussi possible de simpmlifier la macro pour avoir moin sde code.

merci d'avance
 
Re : erreur d'execution 1004

bonsoir, voir erreur dans ces lignes ...

16000 !!!! pas possible il n'y a que 256 colonnes !! mettre (256) !

w = Sheets("Stock pâtisserie").Cells(5, 16000).End(xlToLeft).Column
'w cellule vide a la fin de la ligne 5 sur feuille stock pâtisserie

z = Sheets("Stock pâtisserie").Cells(7, 16000).End(xlToLeft).Column
'z cellule vide a la fin de la ligne 7 sur feuille stock pâtisserie

roland
 
Re : erreur d'execution 1004

Bonsoir Jul, bonsoir le forum,

Ces deux lignes ci-dessous posent problèmes sur les verions inférieures à Excel 2007 (je ne sausrait d'ailleurs t'affirmer si sur Excel 2007 c'est possible)...

Code:
w = Sheets("Stock pâtisserie").Cells(5, 16000).End(xlToLeft).Column
'w cellule vide a la fin de la ligne 5 sur feuille stock pâtisserie
z = Sheets("Stock pâtisserie").Cells(7, 16000).End(xlToLeft).Column
'z cellule vide a la fin de la ligne 7 sur feuille stock pâtisserie

Il n'y a que 256 colonnes donc je pense que le bon code serait :

Code:
w = Sheets("Stock pâtisserie").Cells(5, [COLOR=red]256[/COLOR]).End(xlToLeft).Column
'w cellule vide a la fin de la ligne 5 sur feuille stock pâtisserie
z = Sheets("Stock pâtisserie").Cells(7, [COLOR=red]256[/COLOR]).End(xlToLeft).Column
'z cellule vide a la fin de la ligne 7 sur feuille stock pâtisserie

Édition :

Bonsoir Roland on sést croisés...
 
Re : erreur d'execution 1004

le problème ne vien pas d'ici je travaille sur excel 2007 et il y a 36000 colonnes sur une feuille excel 2007
j'ai eu un problème dan sma macro quand j'ai rajouté cette partie:
Code:
Range(Cells(6, 6), Cells(y, 7)).Copy Sheets("Perte pâtisserie").Range(Cells(5, 1), Cells(y + 5, 2))
Range(Cells(6, 6), Cells(y, 6)).Copy Sheets("Production journalière").Range(Cells(2, 1), Cells(y + 5, 1))
Range(Cells(6, 6), Cells(y, 6)).Copy Sheets("Commande journalière").Range(Cells(2, 1), Cells(y + 5, 1))
Range(Cells(6, 6), Cells(y, 6)).Copy Sheets("Perte").Range(Cells(2, 1), Cells(y + 5, 1))
Range(Cells(6, 7), Cells(y, 7)).Copy Sheets("Production journalière").Range(Cells(2, 3), Cells(y + 5, 3))
Range(Cells(6, 7), Cells(y, 7)).Copy Sheets("Commande journalière").Range(Cells(2, 3), Cells(y + 5, 3))
Range(Cells(6, 7), Cells(y, 7)).Copy Sheets("Perte").Range(Cells(2, 3), Cells(y + 5, 3))
merci a+
 
Re : erreur d'execution 1004

Bonsoir le fil, bonsoir le forum

Essaie comme ça :

Code:
Range(Cells(6, 6), Cells(y, 7)).Copy Sheets("Perte pâtisserie").Cells(5, 1)
Range(Cells(6, 6), Cells(y, 6)).Copy Sheets("Production journalière").Cells(2, 1)
Range(Cells(6, 6), Cells(y, 6)).Copy Sheets("Commande journalière").Cells(2, 1)
Range(Cells(6, 6), Cells(y, 6)).Copy Sheets("Perte").Cells(2, 1)
Range(Cells(6, 7), Cells(y, 7)).Copy Sheets("Production journalière").Cells(2, 3)
Range(Cells(6, 7), Cells(y, 7)).Copy Sheets("Commande journalière").Cells(2, 3)
Range(Cells(6, 7), Cells(y, 7)).Copy Sheets("Perte").Cells(2, 3)
 
- 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
5
Affichages
911
Réponses
15
Affichages
784
Réponses
4
Affichages
733
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…