Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

selection de cellule voisines (syntaxe)

  • Initiateur de la discussion Initiateur de la discussion mumu
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

mumu

XLDnaute Occasionnel
Bonjour,

J'ai parcouru le forum sur les pb de sélection de cellule sans succès....
Voici mon problème :
Je voudrais parcourir toutes les cellules de ma colonne K et dès que la cellule active = 0 je copie la cellule active et les 3 à sa droite.
Exemple :
si K2 = 0
selection et copie de K2 à N2
et colle de G2 à J2
puis on va à la ligne suivante pour voir K3 etc.....

J'ai donc écrit ça mais je ne sais pas comment lui demander d'aller copier les 3 cellules après la cellule active.....

Code:
Range("K2").Activate
 Do While ActiveCell.Value <> ""
'pb de syntaxe dans la ligne qui suit
 If ActiveCell.Value = 0 Then ActiveCell(ActiveCell, ActiveCell.Offset(0, 3)).Copy
 ActiveCell.Offset(-4, 0).Select
 ActiveSheet.Paste
 ActiveCell.Offset(1, 0).Select 
 Loop

D'avance merci pour les réponses.....

@+

Mumu
 
Re : selection de cellule voisines (syntaxe)

Bonjour Mumu,

Teste ceci:

Code:
    Range("K2").Activate
    Do While ActiveCell.Value <> ""
        'pb de syntaxe dans la ligne qui suit
        If ActiveCell.Value = 0 Then ActiveCell.Resize(, 4).Copy Destination:=ActiveCell.Offset(-4, 0).Resize(, 4)
        ActiveCell.Offset(1, 0).Select
    Loop

A+
 
Re : selection de cellule voisines (syntaxe)

salut Hasco,

Je te remercie pour cette solution mais ça ne marche pas.
En tatonnant j'ai trouvé une demie solution, le problème c'est que ça garde en mémoire les valeurs de K2 à N2 et que ça le colle dans les lignes suivantes

Code:
Range("K2").Activate
 Do While ActiveCell.Value <> ""
 If ActiveCell.Value = 0 Then Range(ActiveCell, ActiveCell.Offset(0, 3)).Copy
 ActiveCell.Offset(0, -4).Select
 ActiveSheet.Paste
 ActiveCell.Offset(1, 4).Select
 Loop
 
Re : selection de cellule voisines (syntaxe)

Mumu,

L'exemple que je t'ai donné n'étaits là qu'à titre indicatif pour te montrer une manière de copier des cellules adjacentes, à toi d'adapter à ton problème, dont le libellé me laisse perplexe( j'ai l'esprit lent).

.Offset(Ligne,colonne) = décalage d'une ou plusieurs cellules
.Resize(Ligne,colonne) = retaillage de la plage de cellule

Si non, va voir dans ce fil, une autre façon d'opérer (dernier message) avec un référencement en adressage style A1 par rapport à une cellule.


https://www.excel-downloads.com/threads/comment-ameliorer-la-rapidite-de-traitement-macro.109757/

Teste et si tu n'y arrives pas, donne nous un bout de fichier avec démonstration explicite de ce que tu veux.

A+
 
Dernière modification par un modérateur:
Re : selection de cellule voisines (syntaxe)

Re Mumu,

en relisant ton premier post, je crois que j'ai trouvé ce que tu voulais:

Un décalage de 4 colonnes à gauche.

Code:
    Range("K2").Activate
    Do While ActiveCell.Value <> ""
        'pb de syntaxe dans la ligne qui suit
        If ActiveCell.Value = 0 Then ActiveCell.Resize(, 4).Copy Destination:=ActiveCell.[SIZE=3][COLOR=red]Offset(, -4).[/COLOR][/SIZE]Resize(, 4)
        ActiveCell.Offset(1, 0).Select
    Loop
A+
 
Re : selection de cellule voisines (syntaxe)

Re,

Je l'ai joué facile en faisant un copié et collé de ta solution mais je m'en suis inspiré par la suite et j'ai trouvé une solution :

Code:
Do While ActiveCell.Value <> ""
If ActiveCell.Value <> 0 Then Range(ActiveCell, ActiveCell.Offset(0, 3)).Copy Destination:=ActiveCell.Offset(0, -4)
ActiveCell.Offset(1, 0).Select
Loop

J'ai également testé ta dernière proposition qui marche bien.
Je te remercie pour les conseils (par contre le lien n'est pas bon, on arrive sur un profil)

Merci et joyeuses fêtes

mumu
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 Excel fonction SI
Réponses
5
Affichages
592
Réponses
0
Affichages
658
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…