Message d'erreur : L'indice est en dehors des dimensions du tableau

Bonjour,

J'ai fait un petit morceau de vba en me fiant à un tutoriel, mais lorsque je lance la macro j'ai un message d'erreur qui me dit : erreur d'exécution 9 - l'indice est en dehors des dimensions du tableau.

J'ai re suivi le tutoriel pas à pas avec le code indiqué et j'ai toujours le même problème. Pouvez-vous m'aider s'il vous plait.
Merci

33facturation.xlsm (60.95 Ko)

bonjour,

Sheets("Historique_Factures").Range("A" & ligne).Value = Sheets("Factures").Range("G3").Value

dans cette instruction tu fais référence à la feuille nommée factures, mais dans ton classeur elle n'existe pas (il y a bien une feuille facture)

Merci déjà pour ta réponse.

J'ai bien une feuille Facture dans mon classeur, j'avais mis dans le code un "s" à facture je viens de le retirer car ma feuille s'appelle bien "facture"

je viens de retester et j'ai le même problème.

Bonjour à tous,

a priori deux soucis :

ligne = Sheets("Historique_Factures").Range("A2").End(xlDown).Row + 1 donne un N° supérieur à la capacité d'excel

la feuille ne s’appelle pas "Facture" mais "Facture " (avec espace en fin)

A+

Merci à toi pour ta réponse.
Alors j'ai retiré l'espace en plus sur ma feuille Facture

Je n'ai pas touché au +1 car je veux que mon numéro de facture s'incrémente et sur le tutoriel c'était bien comme ça donc je vois pas comment faire autrement.

Donc quand je relance en ayant juste modifié l'espace de ma feuille j'ai maintenant un nouveau message :

Erreur d'éxécution : 1004

Erreur définie par l'application ou par l'objet

:-)

A la place de Row +1 j'ai mis Value +1 et j'ai mis juste un numéro à la place de FA21_07_0056

Bon maintenant il faut que j'arrive à mettre correctement mon numéro de facture avec l'année le mois

En espérant ne pas trop m'arracher les cheveux :-)

Bonjour

Peut être comme ceci ?

Sub ARCHIVER()
Dim Ligne As Integer
With Sheets("Historique_Factures")
    Ligne = .Range("A" & .Rows.Count).End(xlUp).Row + 1
    .Range("A" & Ligne).Value = Sheets("Facture").Range("G3").Value
    .Range("B" & Ligne).Value = Sheets("Facture").Range("G4").Value
    .Range("C" & Ligne).Value = Sheets("Facture").Range("H5").Value
End With
With Sheets("Facture")
    .Range("H5").ClearContents
    .Range("G3").Value = "FA" & _
        Format(Date, "yy") & "_" & _
        Format(Month(Date), "00") & "_" & _
        Format(Right(.Range("G3").Value, 4) + 1, "0000")
    .Range("B18:F35,G37").ClearContents
End With
End Sub

Votre profil mentionne excel 2007 mais à voir votre fichier, je pense que vous êtes sous MAC.

Cordialement

Merci mille fois merci Dan

Ça fonctionne très bien et j'aurai encore tous mes cheveux ce soir ;-)

Oui en effet je suis sous Mac et j'ai changé de version excel, il faudrait que je modifie sur mon profil en effet

Cordialement

Cordialement

Rechercher des sujets similaires à "message erreur indice dehors dimensions tableau"