Copier coller speciale sur VBA

Résolu/Fermé
kikou - 22 avril 2008 à 16:47
 ranou - 14 sept. 2012 à 23:10
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
A voir également:

3 réponses

Utilisateur anonyme
22 avril 2008 à 19:23
Bonjour,

Ç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
9
Merci beaucoup Après 2 jours de recherche mon erreur était juste d'utiliser activesheet à la place de selection... Enfin maintenant ça marche =)
0
Bonjour,
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
'__________________________________________________________________
0