[Catégorie modifiée .Net --> VBA] Petit problème copier coller ligne
silverbeach56
Messages postés28Date d'inscriptionmardi 11 mai 2010StatutMembreDernière intervention21 juin 2010
-
21 juin 2010 à 18:44
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 2015
-
22 juin 2010 à 10:57
Bonjour à tous ,
Voila je suis confronté à un petit problème de copier/coller de ligne.
J'explique, j'ai deux feuilles dans mon classeur (BDD_Facturation et Feuille_Corbeille)
Je souhaite copier la ligne 3 de ma Feuille_Corbeille (sauf la cellule D3) dans la 1ere ligne libre de ma feuille BDD_Facturation.
Voila le code que j'ai :
Set ShSource as Worksheet
Set ShSource = Sheet ("Feuille_Corbeille")
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 22 juin 2010 à 10:55
Salut
Comme expliqué dans l'aide, Cells n'accepte que deux paramètres : la ligne et la colonne. Ta syntaxe est donc erronée.
Si, manuellement, tu tentes de sélectionner la ligne entière n°3 et que tu exclus la cellule de la colonne D, tu verras qu'il n'est pas possible de faire de "Copier" sur cet ensemble de cellules.
Inutile donc de vouloir le faire par programme.
Il te faut donc faire deux copier/coller :
- un premier pour les cellules de cette même ligne, de colonne A à C
- un second pour les cellules de cette même ligne, de colonne D à ...
Comme d'habitude sous Excel, il suffit d'enregistrer une macro pendant que tu fais toi même la manip à la main pour connaitre la syntaxe à utiliser :
- Lance l'enregistrement d'une macro
- Sélectionne les cellules A, B et C de ta ligne
- Fais ton copier
- Va dans ta feuille destination et fais ton Coller
- Retourne dans ta première feuille
- Sélectionne les cellules D à ... de ta ligne
- Fais ton copier
- Va dans ta feuille destination et fais ton Coller
--> Tu auras ainsi le code à utiliser, il ne te restera qu'à rendre paramétrable le numéro de ligne si tu dois en changer.
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 22 juin 2010 à 10:57
PS : Tu peux aussi le faire en une seule sélection :
- Lance l'enregistrement d'une macro
- Sélectionne les cellules A, B et C de ta ligne
- En appuyant sur la touche Control, clique ensite sur les cellules des colonnes E à I
- Fais ton copier
- Va dans ta feuille destination et fais ton Coller