XL 2013 Accélerer temps d'une macro - Résolu

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

fredtu

XLDnaute Junior
Bonjour à tous,

Je vous explique le pb que je n'arrive pas à résoudre.
Dans mon classeur, j'ai deux Feuilles. Saisie des données (c'est un formulaire) et Données dans laquelle je veux rappatrier les infos que j'ai saisi dans mon formulaire avant de ne remettre ce dernier à vide.

J'ai utiliser l'enregistreur de Macro :
le code :

Sub Saisie()

'
' Saisie Macro
' Sheets("Données").Select
Rows("3:3").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove ' Insertion d'une nouvelle ligne

Sheets("Saisie des données").Select
Range("C4").Select
Selection.Copy
Sheets("Données").Select
Range("A3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Saisie des données").Select
Range("C5").Select
Selection.Copy
Sheets("Données").Select
Range("B3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

Sheets("Saisie des données").Select
Range("C4:C23").Select
Selection.ClearContents
Range("C4").Select

Sub Saisie()

[\Quote]

Afin de gagner du temps, j'ai modfié ma macro comme suit :
Sub Saisie()
'
' Saisie Macro

Sheets("Données").Select
Rows("3:3").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove ' Insertion d'une nouvelle ligne

Sheets("Saisie des données").Range("C4:C23").Value = Application.Transpose(Sheets("Données").Range("A3:T3").Value)

Sheets("Saisie des données").Select

Range("C4:C23").Select

Selection.ClearContents

Range("C4").Select

End Sub

[\Quote]

Sauf que rien n'est copié dans ma feuille Données.

Pouvez-vous m'aider ? Merci d'avance.

Fredtu
 
Petit test à l'aveuglette ^^

VB:
Sub Saisie()
Sheets("Données").Rows("3:3").Insert Shift:=xlDown, _
CopyOrigin:=xlFormatFromLeftOrAbove ' Insertion d'une nouvelle ligne

For i = 0 To 1
Sheets("Saisie des données").Range("C4").Offset(i, 0).Copy
Sheets("Données").Range("A3").Offset(0, i).PasteSpecial Paste:=xlPasteValues, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Next i

Sheets("Saisie des données").Range("C4:C23").ClearContents

End Sub
 
- 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

Réponses
18
Affichages
134
Réponses
10
Affichages
455
Réponses
2
Affichages
214
Réponses
17
Affichages
877
Retour