Copier coller speciale sur VBA
Résolu
kikou
-
ranou -
ranou -
Bonjour,
Je souhaite faire un collage speciale seulement des valeurs d'une feuille excel à une autre:
Ce code fonctionne tres bien pour copier coller:
Sub kopieren_KlickenSieAuf()
Sheets("OV").Select
Range("A1:AB100").Select
Selection.Copy
Sheets("Tabelle2").Select
Range("A1:AB100").Select
ActiveSheet.Paste
End Sub
Et voici le code que j'ai teste pour un collage spéciale après une visite sur plusieurs forums, mais cela ne fonctionne. pourriez -vous me donner un coup de main?
Sub kopieren_KlickenSieAuf()
Sheets("OV").Select
Range("A1:AB100").Select
Selection.PasteSpecial
Sheets("Tabelle2").Select
Range("A1:AB100").Select
ActiveSheet.Paste
Paste:=xlValues
End Sub
Je vous remercie d'Avance.
bonne soirée.
kikou
Je souhaite faire un collage speciale seulement des valeurs d'une feuille excel à une autre:
Ce code fonctionne tres bien pour copier coller:
Sub kopieren_KlickenSieAuf()
Sheets("OV").Select
Range("A1:AB100").Select
Selection.Copy
Sheets("Tabelle2").Select
Range("A1:AB100").Select
ActiveSheet.Paste
End Sub
Et voici le code que j'ai teste pour un collage spéciale après une visite sur plusieurs forums, mais cela ne fonctionne. pourriez -vous me donner un coup de main?
Sub kopieren_KlickenSieAuf()
Sheets("OV").Select
Range("A1:AB100").Select
Selection.PasteSpecial
Sheets("Tabelle2").Select
Range("A1:AB100").Select
ActiveSheet.Paste
Paste:=xlValues
End Sub
Je vous remercie d'Avance.
bonne soirée.
kikou
A voir également:
- Paste special vba
- Copier coller vba - Meilleures réponses
- Excel vba activesheet.paste - Meilleures réponses
- Caractere special - Guide
- Dossier spécial - Guide
- Symbole special - Guide
- Ecriture special facebook - Guide
- Ecriture special instagram - Guide
3 réponses
Bonjour,
Ça devrait plutôt ressembler à :
en pratique, la copie ne se fait pas sur une plage mais sur une cellule :
ces 2 lignes :
Range("A1:AB100").Select
ActiveSheet.Paste
devrait se lire :
Range("A1").Select
ActiveSheet.Paste
dans votre exemple, il fauit utiliser :
Selection.PasteSpecial Paste:=xlPasteValues
Lupin
Ça devrait plutôt ressembler à :
Option Explicit Sub kopieren_KlickenSieAuf() Sheets("OV").Select Range("A1:AB100").Select Selection.Copy Sheets("Tabelle2").Select Range("A1").Select Selection.PasteSpecial Paste:=xlPasteValues End Sub '
en pratique, la copie ne se fait pas sur une plage mais sur une cellule :
ces 2 lignes :
Range("A1:AB100").Select
ActiveSheet.Paste
devrait se lire :
Range("A1").Select
ActiveSheet.Paste
dans votre exemple, il fauit utiliser :
Selection.PasteSpecial Paste:=xlPasteValues
Lupin
J'ai un problème qui sembla aléatoire concernant un copier/coller dans une macro.
Etape 1, je suis dans un tableau x feuile x1 et copie une selection (sel_table) (3 colonnes, 64 lignes)
Etape 2, je lis un tableau Y feuille Y1 (Ici Rando )
Etape 3 lorsque le tableau Y est lu, je veux vider le presse papier en "A10105"
Problème: Parfois les données sont copiées, parfois pas???
Le copy se fait toujours bien mais le Paste seulement parfois.
Cette séquence est intégrée dans une boucle et revient n fois.
Sur une boucle de 94 itérations, 9 sont OK sans que je ne remarque quelque chose de particulier dans les tableaux Y receveurs!.
Précision complémentaire: le fichier à lire est toujours trouvé lors de mes test (IFound)
Je suis en W7, sur un PC 64 bits avec MsOffice 2010
Voyez ci-dessous le code.
Merci de me donner un avis sur une éventuelle erreur, ou peut-être pouvez-vous me donner une façon différente d'agir pour copier en VBA ces données d'un tableau à un autre.
'_________________________________________________________________
' copier les données de selection
Range("sel_table").Select
Selection.Copy
'
'
' ouverture du tableau de la rando
On Error Resume Next
Workbooks.Open za
Dim lWorkbook As Workbook
Dim lFound As Boolean
lFound = False
For Each lWorkbook In Workbooks
If lWorkbook.Name = zaw Then
lFound = True
Exit For
End If
Next
If lFound Then
Sheets("Rando ").Select
Sheets("Rando ").Activate
ActiveSheet.Unprotect
Range("a10105").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'__________________________________________________________________