Copiercollervaleurs

Bonjour le forum

J'ai une macro qui fonctionne super bien, le seul problème c'est qu'elle recopie l'intégralité de la cellule

je voudrais simplement qu'elle copie juste les valeurs

Merci

bonjour,

remplace ta macro par :

Sub RecopierDonnee()
Dim a
a = Worksheets("Feuil1").Range("A17:E21").Value
Worksheets("Feuil2").Range("A17").Resize(UBound(a), UBound(a)) = a
Worksheets("Feuil3").Range("A1").Resize(UBound(a), UBound(a)) = a
End Sub

A+

Salut Galopin

Merci pour ta réponse, mais je dois absolument garder ma base de la macro, sinon je ne pourrai continuer

serait il possible de faire plus simple et sans toucher à ma macro

Merci

ta macro, ta bien vu qu'elle marche pas ! Alors tu peux la faire encadrer si tu veux, mais la garder, ça va pas avancer beaucoup la résolution de ton problème...

je t'ai donné l'idée générale et 2 exemples un vers page 2 un vers page 3 avec une plage décalée.

maintenant si tu changes les adresses ça va marcher aussi et je me vexerai pas.

j'ai pris la plage multiple parce que tu avais manifestement pris cette plage en exemple.

Mais si tu veux copier une cellule unique ça marchera aussi.

Quoique... pour copier une cellule unique YA plus simple :

YAKA faire

Feuil2.[A1] = Feuil1.[A1]

et le tour est joué.

Si c'est les crochets qui te gènent tu mets Range...

Feuil2.Range("A1") = Feuil1.Range("A1") 

et le tour est joué.

Et si c'est Feuil2/Feuil1 c'est trop compliqué tu mets :

Worksheets("Feuil2").Range("A1") =Worksheets("Feuil1").Range("A1")

et le tour est joué également...

Après plus simple... YAPA ! Désolé.

Sinon-si tu veux vraiment faire du :

Worksheets("Feuil1").Range("A1").Copy

YA l'enregistreur de macro et tu fais un collage spécial value.

Mais à cette vitesse là, tu vas pas progresser bien vite !

si tu te débrouilles pas trop mal ça devrait te donner quelque chose comme :

Sheets("Feuil1").Range("A13").Copy
    Sheets("Feuil2").Range("A15").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone

Après si tu insistes vraiment, tu rajoutes des EnableEvents... Dans 99 % des cas ça sert à rien, mais ça fait chic !

On peut aussi rajouter

Application.ScreenUpdating = False 'au début

Là ça fait carrément geek ! Et en plus dans 99 % des cas c'est utile...

Bon je t'en ai mis assez ?

A+

Cher Galopin

J'ai demandé simplement de l'aide car je débute en vba et je vois que tu es froissé et que tu en fais toute une histoire, certes ce n'est pas grave je te remercie et je vais persévérer de mon coté, j'y arrive mais avec beaucoup plus de temps que les exceleurs

Bonne soirée et encore Merci

Non, non pas froissé !

D'ailleurs je t'ai exposé toutes les solutions simples possibles. (pour plage à plusieurs cellules ou pour cellule unique)

C'est vrai que je n'ai pas repris textuellement toutes tes lignes par ce que j'ai écris la plupart du temps directement sur le forum et sans passer par le fichier Excel.

Après on fait comme on aime... ou comme on comprend !

J'ai pensé que remplacer "A1" par "A6", "A7" ou "A8" ça tu saurais faire...

Mais à cette réserve près toutes mes solutions sont équivalentes... et exactes.

Après si mon humour un peu désinvolte te déplait... désolé : C'est vrai que des fois je me marre un peu !

L'avantage c'est que je prend pas cher et... j'ai rarement faux

J'ai parfois un peu tendance à en rajouter un peu quand ça me parait indispensable :

Le coup des EnableEvents : Moi je classe ça dans la catégorie "arme de guerre" donc à moins de savoir à quoi ça sert, quand et comment on s'en sert, il vaut mieux que tu oublies. Et comme là, il n'y en a pas besoin ma remarque est totalement justifiée.

Par contre ScreenUpdating = False ça, ça fait partie du b+a = ba

Le petit enfant qui apprend à marcher s'en fout si parfois on rigole un peu si il tombe... Il se relève il redonne la main (OUPA) et il recommence quand même...

Bon ITFO un bizou en plus ?

A+

Rechercher des sujets similaires à "copiercollervaleurs"