VBA - Simplification "copier/coller" Excel
Résolu
Utilisateur anonyme
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
J'ai une macro VBA qui est assez longue, je cherche à réduire son temps de traitement en réécrivant mon programme en un language simplifié.
Voici un morceau de la base:
J'ai cherché à partir sur une autre base telle que :
Je pense ne pas être loin mais ma seconde ligne doit être débogé...
Pouvez-vous m'aider ?
Cordialement,
Ano
J'ai une macro VBA qui est assez longue, je cherche à réduire son temps de traitement en réécrivant mon programme en un language simplifié.
Voici un morceau de la base:
L = 5 For I = 5 To 700 If [Conditions...] Then Sheets("arrivée").Cells(L, 5) = Sheets("départ").Cells(I, 5) Sheets("arrivée").Cells(L, 7) = Sheets("départ").Cells(I, 7) Sheets("arrivée").Cells(L, 8) = Sheets("départ").Cells(I, 8) Sheets("arrivée").Cells(L, 9) = Sheets("départ").Cells(I, 9) Sheets("arrivée").Cells(L, 10) = Sheets("départ").Cells(I, 10) Sheets("arrivée").Cells(L, 11) = Sheets("départ").Cells(I, 11) Sheets("arrivée").Cells(L, 13) = Sheets("départ").Cells(I, 13) Sheets("arrivée").Cells(L, 14) = Sheets("départ").Cells(I, 14) Sheets("arrivée").Cells(L, 15) = Sheets("départ").Cells(I, 15) Sheets("arrivée").Cells(L, 16) = Sheets("départ").Cells(I, 16) Sheets("arrivée").Cells(L, 17) = Sheets("départ").Cells(I, 17) Sheets("arrivée").Cells(L, 18) = Sheets("départ").Cells(I, 18) Sheets("arrivée").Cells(L, 19) = Sheets("départ").Cells(I, 19) L = L + 1 End If Next I
J'ai cherché à partir sur une autre base telle que :
L = 5 For I = 5 To 700 If [Conditions...] Then Sheets("départ").Range(Cells(I, 5), Cells(I, 19)).Copy Sheets("arrivée").Range(Cells(L, 5), Cells(L, 19)).Paste L = L + 1 End If Next I
Je pense ne pas être loin mais ma seconde ligne doit être débogé...
Pouvez-vous m'aider ?
Cordialement,
Ano
A voir également:
- VBA - Simplification "copier/coller" Excel
- Historique copier coller - Guide
- Liste déroulante excel - Guide
- Copier-coller - Accueil - Informatique
- Copier coller pdf - Guide
- Style d'écriture a copier coller - Guide
3 réponses
Bonjour
pour aller vite
Michel
pour aller vite
Application.ScreenUpdating = False If [Conditions...] Then With Sheets("arrivée") .Range("E5:S700") = Sheets("départ").Range("E5:S700").Value .Columns("F").ClearContents .Columns("L").ClearContents End With End If
Michel
J'ai une autre question, comment faire pour que seulement les valeurs soient copiées et non le format ?
Je me doute qu'un ".Values" doit trainer quelque part mais où et comment ?!!
Je me doute qu'un ".Values" doit trainer quelque part mais où et comment ?!!
bonjour
quelque chose comme ça
bonne suite
quelque chose comme ça
Const limax = 700 Const Condition = True Public Sub Kopi() Application.ScreenUpdating = False L = 5 For I = 5 To limax If Condition Then Sheets("départ").Range(Cells(I, 5), Cells(I, 19)).Copy Sheets("arrivée").Cells(L, 5) L = L + 1 End If Next I Application.ScreenUpdating = True End Sub
bonne suite
vu son code, je pense que la condition est évaluée à chacune des lignes i
bonne fin d'après midi
alors en me basant sur ton code
merci et bonne soirée