VBA Copier coller d'1 feuille à 1 autre

Scally15 Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je suis vraiment débutante dans VBA et je me suis lancée dans un projet impossible...

Je cherche à créer des cases et si elles sont cochées alors le contenu d'une feuille qui se trouve dans le classeur (Feuil 2,3,4....) se retrouve en dessous de la feuille ayant les cases (Feuil1).

Il y aura plusieurs cases cochées donc le contenu doit à chaque fois venir en dessous du contenu précedent dans la Feuil1.
(Pour info il ya des images dans les Feuil 2,3,4...)

En fait j'essaye de créer un devis (Feuil 1) avec des fiches techniques qui s'ajoutent si on valide la case.

Donc j'ai commencé comme ca :

Sub Caseàcocher1_Cliquer()
Sheets("Feuil1").Select
Range("Feuil1").Copy
Sheets("Feuil2").Select
Range("Feuil2").Select
End Sub

Impossible d'y arriver, peut etre que tout est faux...Merci à celui qui saura m'aider.


A voir également:

4 réponses

ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
bonjour

essaies ceci

Sheets(2).Range("A1:I47").Copy Sheets(1).Range("A49")

bonne suite
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Bonjour,
L'exposer de ta question manque, pour le moins, de clarté !
1°) Tes CheckBox, il viennent de la barre d'outils "Boite à outils Contrôle" ou de la barre d'outils Formulaire ?
Chacun à un mode de fonctionnement totalement différent.
Ensuite..
d'une feuille qui se trouve dans le classeur (Feuil 2,3,4....) se retrouve en dessous de la feuille ayant les cases (Feuil1).
Et...
Tu veux copier quoi et où.. de la feuille X vers où de la feuille Y ?
Explique un peu mieux si tu veux être aidée valablement.
A+

Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
re

- as tu essayé la proposition du post 3?

- pour tes cases à cocher tu devrais utiliser des contrôles activeX (affichage/Boite à outils contrôles) nettement plus simples à mettre en oeuvre
dans ton cas on aurait par exemple une recopie lorsque la Checkbox1 est cochée

Private Sub CheckBox1_Click()
  If CheckBox1.Value = True Then
    Sheets(2).Range("A1:I47").Copy Sheets(1).Range("A49")
  End If
End Sub

- comme dit lermitte plus haut, il est difficile pour nous de voir exactement le pb
- tu devrais joindre ton fichier (ou une partie sans données confidentielles au format excel 2003) en utilisant cjoint.com et en mettant le lien obtenu dans ton prochain post

bonne suite
0
Heremion Messages postés 538 Date d'inscription   Statut Membre Dernière intervention   102
 
Bonjour Scally,

Tu peux faire ainsi:

Worksheets(1).Range("A1:XFD65536").Copy
Worksheets(2).Activate
Worksheets(2).Range("A1").Select
Worksheets(2).Paste

ou un truc du genre?
-1
scally15
 
Bonjour Heremion,

Merci pour ton aide.
J'ai essayé ca et ca ne marche tj pas :

Sub Structure12_Caseàcocher1_Cliquer()
Worksheets(2).Range("A1:I47").Copy
Worksheets(2).Activate
Worksheets(1).Range("A49:I95").Select
Worksheets(1).Paste
End Sub

La copie fontionne mais le worksheets 1 range non...

As tu une idee?
0
Heremion Messages postés 538 Date d'inscription   Statut Membre Dernière intervention   102
 
Dans la feuille où tu vas copier les données, inutile de mentionner toute la plage, tu mets juste la cellule de départ.
0