Erreur 424:Objet requis et Erreur 438:l'objet ne gère pas

Bonjour à tous,

J'aimerais que vous m'aidiez à trouver ce qui ne va pas avec ces codes. J'ai modifié le 1er code en espérant résoudre mon problème mais en vain.

Celui ci me donne erreur 424: Objet requis

Private Sub Workbook_Open()
ligne = 1
For ligne = 1 To 10
    ValPrec = "Valeur" & ligne 'pour avoir Valeur1 , Valeur2, Valeur 3 etc
    Feuil1.ValPrec = Feuil1.Cells(ligne, 1)
    ligne = ligne + 1
    Next ligne

Et celui là Erreur 438 « l'objet ne gère pas cette propriété ou méthode »

Private Sub Workbook_Open()
ligne = 1
Set LaFeuille = Sheets("Feuil1")
    For ligne = 1 To 10
    ValPrec = "Valeur" & ligne 'pour avoir Valeur1 , Valeur2, Valeur 3 etc
    LaFeuille.ValPrec = LaFeuille.Cells(ligne, 1)
    ligne = ligne + 1
    Next ligne
End Sub

Lorsque je lance le mode pas à pas, je constate que le problème se situe au Niveau de cette ligne

LaFeuille.ValPrec = LaFeuille.Cells(ligne, 1)

ou

Feuil1.ValPrec = Feuil1.Cells(ligne, 1)

Je n'arrive pas à détecter mon erreur.

Merci d'avance pour vos réponses.

Bon début de semaine.

Cordialement

Bonjour,

Tout cela est un peu brouillon.

Essaie ceci :

Option Explicit

Private Sub Workbook_Open()
Dim I As Long
Dim valPrec As String

    For I = 1 To 10
        valPrec = "Valeur" & I
        Feuil1.Cells(I, 1) = valPrec
    Next I

End Sub

Bonjour,

Pour commencer, tu supprimes de ton code : ligne = 1 et ligne = ligne + 1

Ou c'est toi qui incrémentes, ou c'est la boucle, mais pas les deux en même temps... là tu ne défilais qu'une ligne sur deux (si pas d'erreur)

ValPrec est une variable contenant une donnée de type String. En aucun cas une propriété ou une méthode de l'objet Worksheet que tu pourrais accoler à ta variable-objet LaFeuille.

Il s'agit donc de savoir ce qu'est censé représenter le contenu de cette variable ?

Et si tu déclarais tes variables, ce serait un progrès indéniable.

Cordialement.

Re,

@ MFerrand,

Le rouge te vas bien.

Cdlt.

Mais je note qu'il te sied aussi

A+

Merci pour vos réponses rapides,

Encore désolée pour mes erreurs de débutante qui "dérangent"mais soyez indulgent

Et merci pour les Conseils.

Jean-Eric a écrit :

Bonjour,

Tout cela est un peu brouillon.

Essaie ceci :

Option Explicit

Private Sub Workbook_Open()
Dim I As Long
Dim valPrec As String

    For I = 1 To 10
        valPrec = "Valeur" & I
        Feuil1.Cells(I, 1) = valPrec
    Next I

End Sub

Le but de la macro n'est pas d'écrire à chaque fois Valeur1 dans les cellules mais plutôt de definir des variables Valeur1 à Valeurs10 de la manière suivante mais en utilisant une boucle car j'ai plus de 10 Valeurs en vrai.

Dim Valeur1, Valeur2, Valeur3, Valeur4, Valeur5, Valeur6, Valeur8, Valeur9, Valeur10 As Integer

Feuil1.Valeur1 = Feuil1.Cells(1, 1)
Feuil1.Valeur2 = Feuil1.Cells(2, 1)
Feuil1.Valeur3 = Feuil1.Cells(3, 1)
Feuil1.Valeur4 = Feuil1.Cells(4, 1)
Feuil1.Valeur5 = Feuil1.Cells(5, 1)
Feuil1.Valeur6 = Feuil1.Cells(6, 1)
Feuil1.Valeur7 = Feuil1.Cells(7, 1)
Feuil1.Valeur8 = Feuil1.Cells(8, 1)
Feuil1.Valeur9 = Feuil1.Cells(9, 1)
Feuil1.Valeur10 = Feuil1.Cells(10, 1)

Merci encore pour vos réponses.

Tu élimines ValPrec !

Tu définis Valeur comme tableau de 1 à 10 : Dim Valeur(1 To 10), ou sur l'éventail de valeurs que tu souhaites, typé ou non selon ce que tu mets comme contenu...

Et dans ta boucle : For i = 1 To 10

Tu affectes de cette façon : Valeur(i) = Feuil1.Cells(i, 1) [ou LaFeuille.Cells... etc.]

Cordialement.

MFerrand a écrit :

Tu élimines ValPrec !

Tu définis Valeur comme tableau de 1 à 10 : Dim Valeur(1 To 10), ou sur l'éventail de valeurs que tu souhaites, typé ou non selon ce que tu mets comme contenu...

Et dans ta boucle : For i = 1 To 10

Tu affectes de cette façon : Valeur(i) = Feuil1.Cells(i, 1) [ou LaFeuille.Cells... etc.]

Cordialement.

Problème résolu!

Ca fonctionne!! Merci à vous deux .

Bon début de semaine.

Rechercher des sujets similaires à "erreur 424 objet requis 438 gere pas"