OVH Cloud OVH Cloud

Erreur 1024 (débutant)

5 réponses
Avatar
Octave
Bonjour,

J'apprends progressivement l'utilisation du V.B.A. dans Excel en
essayant certaines macros contenues dans "Les sites recommandés" et en
tâtonnant avec l'enregistreur de macro puis l'éditeur de VBA...
Cependant je bloque déjà sur une première erreur que je n'arrive pas à
cerner. La demande semble bien formulée au niveau de la syntaxe mais cela
bloque quand même.

Voici mes questions : (vous trouverez plus bas les données de mon
problème)
Vous serait-il possible de m'indiquer le site sur lequel je puisse trouver
des informations sur cette erreur ?
Ou mieux encore vous serait-il possible en plus de m'indiquer comment
corriger cette erreur ?

Voici mon problème : J'ai créé une macro qui doit recopier des
informations situées dans une zone de saisie (Feuille : Gesttrav Cellule de
E7:F7...) vers une cellule vide située après la dernière valeur dans une
ligne précise (Feuille : Chronotrav ; Ligne : 6)
Seulement, la macro n'aboutit pas car elle se trouve interrompue par une
"erreur d'exécution '1024'"
Précision : je démarre cette macro par un bouton.

Voici ma macro : (très longue pour peu de chose mais je débute... Je
suis ouvert à toutes propositions tant qu'il y a un minimum d'explication
afin que je puisse suivre et comprendre le projet)

Sub Enraujourdhui()

Sheets("Chronotrav").Select
Range("E6").Select
Selection.End(xlToRight).Select
Selection.End(xlToRight).Select
ActiveCell.Offset(0, 1).Range("A1").Select
Sheets("Gesttrav").Select
Range("E7:F7").Select
Selection.Copy
Sheets("Chronotrav").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:=False, Transpose:=False
ActiveCell.Offset(2, 0).Range("A1").Select
Sheets("Gesttrav").Select
Range("F9:F28").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Chronotrav").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:=False, Transpose:=False
ActiveCell.Offset(-2, 1).Range("A1").Select
Sheets("Gesttrav").Select
Application.CutCopyMode = False
Selection.ClearContents
ActiveCell.Offset(0, 5).Range("A1").Select
ActiveCell.FormulaR1C1 = "Ok"
With ActiveCell.Characters(Start:=1, Length:=2).Font
.Name = "Arial"
.FontStyle = "Normal"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
With Selection
.HorizontalAlignment = xlGeneral
.VerticalAlignment = xlCenter
.WrapText = True
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.WrapText = True
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
End Sub


Merci d'avance

Octave

5 réponses

Avatar
isabelle
bonjour Octave,

si c'est un bouton de la boite à outils controle, passe en mode édition
du bouton, fait un click droit sur le bouton, choisi : Propriété
dans cette liste mais TakeFocusOnClick à false.
a+
isabelle


Bonjour,

J'apprends progressivement l'utilisation du V.B.A. dans Excel en
essayant certaines macros contenues dans "Les sites recommandés" et en
tâtonnant avec l'enregistreur de macro puis l'éditeur de VBA...
Cependant je bloque déjà sur une première erreur que je n'arrive pas à
cerner. La demande semble bien formulée au niveau de la syntaxe mais cela
bloque quand même.

Voici mes questions : (vous trouverez plus bas les données de mon
problème)
Vous serait-il possible de m'indiquer le site sur lequel je puisse trouver
des informations sur cette erreur ?
Ou mieux encore vous serait-il possible en plus de m'indiquer comment
corriger cette erreur ?

Voici mon problème : J'ai créé une macro qui doit recopier des
informations situées dans une zone de saisie (Feuille : Gesttrav Cellule de
E7:F7...) vers une cellule vide située après la dernière valeur dans une
ligne précise (Feuille : Chronotrav ; Ligne : 6)
Seulement, la macro n'aboutit pas car elle se trouve interrompue par une
"erreur d'exécution '1024'"
Précision : je démarre cette macro par un bouton.

Voici ma macro : (très longue pour peu de chose mais je débute... Je
suis ouvert à toutes propositions tant qu'il y a un minimum d'explication
afin que je puisse suivre et comprendre le projet)

Sub Enraujourdhui()

Sheets("Chronotrav").Select
Range("E6").Select
Selection.End(xlToRight).Select
Selection.End(xlToRight).Select
ActiveCell.Offset(0, 1).Range("A1").Select
Sheets("Gesttrav").Select
Range("E7:F7").Select
Selection.Copy
Sheets("Chronotrav").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:úlse, Transpose:úlse
ActiveCell.Offset(2, 0).Range("A1").Select
Sheets("Gesttrav").Select
Range("F9:F28").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Chronotrav").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:úlse, Transpose:úlse
ActiveCell.Offset(-2, 1).Range("A1").Select
Sheets("Gesttrav").Select
Application.CutCopyMode = False
Selection.ClearContents
ActiveCell.Offset(0, 5).Range("A1").Select
ActiveCell.FormulaR1C1 = "Ok"
With ActiveCell.Characters(Start:=1, Length:=2).Font
.Name = "Arial"
.FontStyle = "Normal"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
With Selection
.HorizontalAlignment = xlGeneral
.VerticalAlignment = xlCenter
.WrapText = True
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.WrapText = True
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
End Sub

Merci d'avance

Octave


Avatar
isabelle
oup's, mais il faut lire mets ;-)
isabelle


bonjour Octave,

si c'est un bouton de la boite à outils controle, passe en mode édition
du bouton, fait un click droit sur le bouton, choisi : Propriété
dans cette liste mais TakeFocusOnClick à false.
a+
isabelle


Bonjour,

J'apprends progressivement l'utilisation du V.B.A. dans Excel en
essayant certaines macros contenues dans "Les sites recommandés" et en
tâtonnant avec l'enregistreur de macro puis l'éditeur de VBA...
Cependant je bloque déjà sur une première erreur que je n'arrive pas à
cerner. La demande semble bien formulée au niveau de la syntaxe mais cela
bloque quand même.

Voici mes questions : (vous trouverez plus bas les données de mon
problème)
Vous serait-il possible de m'indiquer le site sur lequel je puisse trouver
des informations sur cette erreur ?
Ou mieux encore vous serait-il possible en plus de m'indiquer comment
corriger cette erreur ?

Voici mon problème : J'ai créé une macro qui doit recopier des
informations situées dans une zone de saisie (Feuille : Gesttrav Cellule de
E7:F7...) vers une cellule vide située après la dernière valeur dans une
ligne précise (Feuille : Chronotrav ; Ligne : 6)
Seulement, la macro n'aboutit pas car elle se trouve interrompue par une
"erreur d'exécution '1024'"
Précision : je démarre cette macro par un bouton.

Voici ma macro : (très longue pour peu de chose mais je débute... Je
suis ouvert à toutes propositions tant qu'il y a un minimum d'explication
afin que je puisse suivre et comprendre le projet)

Sub Enraujourdhui()

Sheets("Chronotrav").Select
Range("E6").Select
Selection.End(xlToRight).Select
Selection.End(xlToRight).Select
ActiveCell.Offset(0, 1).Range("A1").Select
Sheets("Gesttrav").Select
Range("E7:F7").Select
Selection.Copy
Sheets("Chronotrav").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:úlse, Transpose:úlse
ActiveCell.Offset(2, 0).Range("A1").Select
Sheets("Gesttrav").Select
Range("F9:F28").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Chronotrav").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:úlse, Transpose:úlse
ActiveCell.Offset(-2, 1).Range("A1").Select
Sheets("Gesttrav").Select
Application.CutCopyMode = False
Selection.ClearContents
ActiveCell.Offset(0, 5).Range("A1").Select
ActiveCell.FormulaR1C1 = "Ok"
With ActiveCell.Characters(Start:=1, Length:=2).Font
.Name = "Arial"
.FontStyle = "Normal"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
With Selection
.HorizontalAlignment = xlGeneral
.VerticalAlignment = xlCenter
.WrapText = True
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.WrapText = True
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
End Sub

Merci d'avance

Octave




Avatar
michdenis
Bonjour Octave,

à la troisième ligne de code, on retrouve ceci :

Selection.End(xlToRight).Select

La cellule sélectionnée devient la denière colonne de la ligne 6 . La ligne de code suivante demande "
ActiveCell.Offset(0, 1).Range("A1").Select " à excel de sélectionne une colonne plus à droite. Mais comme excel est déjà
sur la denière colonne, il ne peut exécuter cet ordre et il te l'indique en provoquant l'erreur 1004 .


Je n'ai pas été plus loin dans la lecture de la procédure.

Ce serait bien si tu indiquait le résultat attendu de la procédure ... il n'est pas toujours évident de déduire les
intentions de l'usager dernière les lignes de code ....!



Salutations!

P.S. Tu peux aussi faciliter la tâche des intervenants en indiquant la ligne mise en surbrillance lors de l'exécution.





"Octave" a écrit dans le message de news:c9fpu7$hq7$
Bonjour,

J'apprends progressivement l'utilisation du V.B.A. dans Excel en
essayant certaines macros contenues dans "Les sites recommandés" et en
tâtonnant avec l'enregistreur de macro puis l'éditeur de VBA...
Cependant je bloque déjà sur une première erreur que je n'arrive pas à
cerner. La demande semble bien formulée au niveau de la syntaxe mais cela
bloque quand même.

Voici mes questions : (vous trouverez plus bas les données de mon
problème)
Vous serait-il possible de m'indiquer le site sur lequel je puisse trouver
des informations sur cette erreur ?
Ou mieux encore vous serait-il possible en plus de m'indiquer comment
corriger cette erreur ?

Voici mon problème : J'ai créé une macro qui doit recopier des
informations situées dans une zone de saisie (Feuille : Gesttrav Cellule de
E7:F7...) vers une cellule vide située après la dernière valeur dans une
ligne précise (Feuille : Chronotrav ; Ligne : 6)
Seulement, la macro n'aboutit pas car elle se trouve interrompue par une
"erreur d'exécution '1024'"
Précision : je démarre cette macro par un bouton.

Voici ma macro : (très longue pour peu de chose mais je débute... Je
suis ouvert à toutes propositions tant qu'il y a un minimum d'explication
afin que je puisse suivre et comprendre le projet)

Sub Enraujourdhui()

Sheets("Chronotrav").Select
Range("E6").Select
Selection.End(xlToRight).Select
Selection.End(xlToRight).Select
ActiveCell.Offset(0, 1).Range("A1").Select
Sheets("Gesttrav").Select
Range("E7:F7").Select
Selection.Copy
Sheets("Chronotrav").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:úlse, Transpose:úlse
ActiveCell.Offset(2, 0).Range("A1").Select
Sheets("Gesttrav").Select
Range("F9:F28").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Chronotrav").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:úlse, Transpose:úlse
ActiveCell.Offset(-2, 1).Range("A1").Select
Sheets("Gesttrav").Select
Application.CutCopyMode = False
Selection.ClearContents
ActiveCell.Offset(0, 5).Range("A1").Select
ActiveCell.FormulaR1C1 = "Ok"
With ActiveCell.Characters(Start:=1, Length:=2).Font
.Name = "Arial"
.FontStyle = "Normal"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
With Selection
.HorizontalAlignment = xlGeneral
.VerticalAlignment = xlCenter
.WrapText = True
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.WrapText = True
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
End Sub


Merci d'avance

Octave
Avatar
Jacquouille
Bonsoir Octave,
Pas beaucoup de temps et encore moins de science pour t'expliquer.
Je crois (au vu des éléments spécifiés) que tu as utilisé l'enregistreur de
macro.
Parfait, c'est très bien et c'est ainsi que l'on apprend.
Malheureusement, il utilise toujours une syntaxe très lourde et spécifie
tout, même ce qui est d'office.
Essaie ceci, sur une autre feuille afin de voir si ta macro fonctionne.
Toujours partir de simple, puis ajouter un truc ou l'autre.
Ceci donne la valeur de la cellule E7 de la feuille Gesttrav à la cel E6 de
la feuille Chronotrav :
[Chronotrav!E6]=[Gesttrav!E7]
Comme tu t'en doutes, c'est un truc du capitaine Crochet, MVP à 16 heures.
Pas oublier le ! après le nom de la feuille.
Avé ce truc, plus besoin de sélectionner une chiée de trucs, puis de les
coller autre part.
Bonne chance
--
Jacquouille conseille : http://www.excelabo.net


"Octave" a écrit dans le message news:
c9fpu7$hq7$
Bonjour,

J'apprends progressivement l'utilisation du V.B.A. dans Excel


Avatar
Octave
Bonjour à tous,
"Octave" a écrit dans le message de
news:c9fpu7$hq7$
Bonjour,
Voici mes questions : (vous trouverez plus bas les données de mon
problème)
Vous serait-il possible de m'indiquer le site sur lequel je puisse trouver
des informations sur cette erreur ?
Ou mieux encore vous serait-il possible en plus de m'indiquer comment
corriger cette erreur ?


J'ai réussi à trouver par hasard de mon côté un élément de réponse sur :
http://www.excelabo.net/xl/adresses.php#activate
Je prends toutefois bonne note de vos propositons que je vais essayer
Merci à tous pour vos propositions et vos recommandations.

Octave