J'essaie de copier une plage de cellules pour lesquelles je ne connais pas la dernière ligne et colonne (bien que je puisse facilement accéder à celles utilisant variables). Malheureusement, la façon dont j'essaie de référencer une plage est de me donner une erreur d'exécution 1004 (Erreur définie par l'application ou définie par l'objet) lorsque j'utilise des variables, et je n'arrive pas à comprendre pourquoi. Voici un exemple du code:Erreur d'exécution '1004' lors de la tentative de copie d'une plage (Excel VBA)
Dim wkbk As Workbook
Dim copy_rng As Range
...
Set copy_rng = wkbk.Worksheets("Payable").Range("A1:Y3500")
Set copy_rng = wkbk.Worksheets("Payable").Range(Cells(1, 1), Cells(last_row_pay, last_col_pay))
La première instruction Set est simplement un exemple, et il fonctionne très bien (donc je sais Wkbk est bien défini et il est de trouver la feuille de calcul « à payer »). Est-ce que quelqu'un sait pourquoi la deuxième instruction Set ne fonctionnerait pas? Y a-t-il un problème de syntaxe? (Pendant le débogage, si je survole les variables last_row_pay et last_col_pay, je peux voir des valeurs valides - 1533 et 25 respectivement.) Merci pour toute aide.
Très bien taché! Vous pouvez en effet reproduire le problème en activant une feuille autre que "Payable". –
J'ai essayé ceci, et maintenant je reçois une erreur d'exécution '438': L'objet ne supporte pas cette propriété ou cette méthode (sur la ligne Set ci-dessus). Je vais examiner cela, mais laissez-moi savoir si vous avez des idées. Merci!!! – rryanp
J'ai corrigé le post. J'ai oublié de faire référence à la cellule en haut à gauche des données. – ja72