VBA erreur d'Exécution 438 apparaît lorsque “coller” fonctionne
Je suis juste de se familiariser avec VBA et mon code
For k = 3 To ThisWorkbook.Sheets.Count
ThisWorkbook.Sheets(k).Activate
ActiveSheet.Cells(11, 2).Select
lLastRow = Cells(Rows.Count, 1).End(xlUp).Row
ActiveSheet.Range("A5:" & "A" & CStr(lLastRow)).Copy
' ThisWorkbook.Sheets(1).Cells("B" & CStr(lFirstRow) & ":B" & CStr(lLastRow)).Select
ThisWorkbook.Sheets(1).Activate
ActiveSheet.Cells(lFirstRow, 2).Select
Selection.Paste
'Selection.PasteSpecial Paste:=xlPasteValues
'Selection.PasteSpecial Paste:=xlPasteFormats
lFirstRow = lFirstRow + lLastRow
Next k
fait "erreur d'Exécution 438. Cet objet ne gère pas cette propriété ou méthode" apparaît lorsque la ligne "Sélection.Coller" va. Quel est le problème?:(
J'ai essayé d'utiliser le collage spécial, pour activer la feuille et pour sélectionner la cellule (pas de plage), à utiliser Cstr, mais rien n'a changé
- Objet de la plage n'a pas de vo méthode
Paste
. UtilisationActiveSheet.Range("A5:" & "A" & CStr(lLastRow)).Copy ThisWorkbook.Sheets(1).Cells(lFirstRow, 2)
- Essayez de remplacer
Selection.Paste
avecActivesheet.Paste
- tnx les gars, vous êtes les meilleurs
Vous devez vous connecter pour publier un commentaire.
Essayer
Selection.PasteSpecial xlPasteAll
Paste
par lui-même fonctionne sur plusieurs objets, notammentWorksheet
mais pas sur unRange
objet qui est ce que votreSelection
est.Coller à une
Range
vous avez vraiment utiliser lePasteSpecial
méthode avec son " disponible arguments tels quexlPasteAll
;xlPasteValues
;xlPasteFormulas
;xlPasteFormats
et d'autres personnes que vous pouvez voir en appuyant surF1
alors que le curseur est à l'intérieurPasteSpecial
dans le VBE.Remplacer ces deux lignes dans votre code
par
votre code fonctionne parfaitement
Remarque importante pour travailler avec de la pâte et pastespecial en vba
Copie de toute la gamme à partir de n'importe où puis
Coller méthode Spéciale (
Sheets.Cells/Range.PasteSpecial
)Sheets ("Tous Les Jours De Pénurie").Activer
Sheets ("Tous Les Jours De Pénurie").Les cellules (m, 1). PasteSpecial Paste: = xlPasteValues
Un Exemple –
Va jeter erreur
Cela fonctionne parfaitement
Méthode Paste (
ActiveSheet.Paste
)Sheets ("Juin"). Range ("A10").Sélectionnez
ActiveSheet.Coller