Lenteur "Coller" plusieurs cellules d'une même colonne

  • Initiateur de la discussion Initiateur de la discussion samimi94
  • 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 !

samimi94

XLDnaute Occasionnel
Bonsoir à tous,

Je viens vers vous car j'ai un souci que je ne m'explique pas !

Voici mon problème :

J'ai créé un modèle type avec une macro qui gènere un fichier .txt au final.
Avant cela, l'utilisateur doit faire des copier d'un "classeur 1" de cellules qui se trouvent dans une même colonne et cela pour les coller dans un "classeur2", et ce pour chaque colonne.

Le souci étant que lorsqu'il procède au collage de la première colonne cela va relativement vite, mais dès qu'il procède au collage de la seconde colonne tout bug !!!

Mon Pc n'a pas une configuration qui est censé ramé (Vista, processeur 2.66GHZ, 2 Go de ram, excel 2003).

Pensez-vous qu'il s'agit du presse-papier qui me plante tout ou avez-vous des idées à m'apporter, SVP ?

D'avance, merci et bonne soirée à tous.
 
Re : Lenteur "Coller" plusieurs cellules d'une même colonne

Bonsoir Samimi, bonsoir le forum,

Difficile de te répondre sans voir le code de ta macro. Est-ce qu'il y a des Select qui ralentissent énormément le code ? À voir...
 
Re : Lenteur "Coller" plusieurs cellules d'une même colonne

Bonsoir Robert,

Merci pour ta réponse rapide.
Oui il y en a, d'ailleurs c'est BHBH qui m'a gentiment trouvé la solution a un autre problème, ci-dessous ce que je pense qui est la cause de mon ralentissement mais que je ne sais pas résoudre :

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Column = 2 And Target.Count = 1 Then
Cells(Target.Row, 4).Value = IIf(Target <> "", "P", "")
Cells(Target.Row, 5).Value = IIf(Target <> "", "A", "")
End If
If Target.Column < 4 And Target.Count > 1 Then
For Each cel In Selection
If cel.Column = 2 Then
Cells(cel.Row, 4).Value = IIf(cel <> "", "P", "")
Cells(cel.Row, 5).Value = IIf(cel <> "", "A", "")
End If
Next cel
End If

End Sub


D'avance, merci pour ton aide.
 
Re : Lenteur "Coller" plusieurs cellules d'une même colonne

Bonsoir
Il me semble que j'ai déjà eu cela ( mais plus sûr )
Essaye àprès le 2ème "select" d'ajouter ( et ensuite au 3eme ..etc) :
Application.CutCopyMode = False

Il me semble c'est vrai qu'il y a relation avec le presse papiers
 
Re : Lenteur "Coller" plusieurs cellules d'une même colonne

Bonsoir Herve62,

Je ne pense pas avoir saisi ce que tu me dis de faire !

Est ce que ca ressemblerait à cela :

If Target.Column = 2 And Target.Count = 1 Then
Cells(Target.Row, 4).Value = IIf(Target <> "", "P", "")
Cells(Target.Row, 5).Value = IIf(Target <> "", "A", "")
End If
Application.CutCopyMode = False

If Target.Column < 4 And Target.Count > 1 Then
For Each cel In Selection
If cel.Column = 2 Then
Cells(cel.Row, 4).Value = IIf(cel <> "", "P", "")
Cells(cel.Row, 5).Value = IIf(cel <> "", "A", "")
End If
Application.CutCopyMode = False
 
Re : Lenteur "Coller" plusieurs cellules d'une même colonne

Au temps pour moi !
Je n'ai pas vu les réponses précédentes , j'étais en train d'écrire
Ce n'était pas à ce genre de code que je pensais mais plutôt au copier/coller basique
mais en VBA avec .select , .copy et .paste
 
Re : Lenteur "Coller" plusieurs cellules d'une même colonne

Eh ! vous allez plus vite que moi !!! ( je suis encore au Modem56k hahahaa)

J'avais ce code pour un copier/coller


Sheets("2").Select
Range("p56:ar107").Select
Application.CutCopyMode = False ' c'est ICI
Selection.Copy
Sheets("1").Select
Sheets("1").Range("d91").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
 
Re : Lenteur "Coller" plusieurs cellules d'une même colonne

Bonsoir,
perso, je ne vois ni Select, ni copy, donc cette instruction, à mon avis, ne devrait pas servir à grand chose
Je ne comprends pas trop ton souci...😕
Tu copies la colonne A du classeur 1 vers la colonne A du c2, OK?
puis colonne B et ainsi de suite?
combien de cellules dans la colonne?
Si pas ce type de figure, expliques exactement ce que font tes utilisateurs
 
Re : Lenteur "Coller" plusieurs cellules d'une même colonne

Hervé,

Désolée j'ai répondu trop vite 😱

Bonsoir BHBH,

Pour répondre à ta question.
En fait les utilisateurs ont un fichier perso, avec des infos qu'ils doivent me communiquer.

Nom, fonction, lieu, date de naissance, etc... mais tous les utilisateurs ont une présentation différentes, du coup j'ai fait une matrice, avec un ordre de colonne à respecter, le nom colonne A, Lieu en colonne B etc... et chacun doit copier le contenu de ces infos pour les coller dans mon fichier.

Certaines colonnes sont obligatoirement renseignées, comme la lettre P en colonne D dès lors que la la cellule de la colonne B sur cette même ligne est pleine (c'est d'ailleurs toi qui m'a aidé à automatiser cela.

Le souci étant que lorsque qu'un utilisateur a 2000 enregistrements par exemple cela plante tout, je crois que le fait de mettre un P dans la colonne D ralenti tout.
Je voulais savoir si on pouvait accélerer le processus sans tout buguer.

J'espère que je n'ai pas été trop brouillon.

D'avance, merci pour votre aide.
 
Re : Lenteur "Coller" plusieurs cellules d'une même colonne

Re-,
modifie le code comme ceci :

A l'origine, j'avais prévu large, on va diminuer le champ de manœuvre :

Code:
If Target.Column = 2 And Target.Count > 1 Then
For Each cel In Selection
Cells(cel.Row, 4).Value = IIf(cel <> "", "P", "")
Cells(cel.Row, 5).Value = IIf(cel <> "", "A", "")
Next cel

Et reviens si améliorations (ou pas, d'ailleurs...)
 
Re : Lenteur "Coller" plusieurs cellules d'une même colonne

Il en copie une a une, mais seule la colonne B (celle qui a une condition plante tout).

J'ai oublié de te dire que dans ce fichier il y a 17 colonnes à renseigner, je ne sais pas si ca peut t'aider.
 
- 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

W
Réponses
8
Affichages
2 K
Willmaz
W
J
Réponses
6
Affichages
1 K
jujunexcelpas
J
C
Réponses
6
Affichages
5 K
angel97310
A
X
Réponses
4
Affichages
3 K
X
D
Réponses
4
Affichages
2 K
decricri
D
J
Réponses
4
Affichages
15 K
JerCaz
J
Retour