Reduction de formule

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

Olyxier

XLDnaute Occasionnel
Bonjour le forum

Est il possible de reduire cette formule
merci à vous

Case 20
Range("A251").Select
Selection.Copy
Range("AS2").Select
ActiveSheet.Paste
Range("C254").Select
Application.CutCopyMode = False
Selection.Copy
Range("AT2").Select
ActiveSheet.Paste
Range("BB2").Select
ActiveSheet.Paste
Range("B251").Select
Application.CutCopyMode = False
Selection.Copy
Range("AW2").Select
ActiveSheet.Paste
Range("B252").Select
Application.CutCopyMode = False
Selection.Copy
Range("AX2").Select
ActiveSheet.Paste
Range("O124").Select
Application.CutCopyMode = False
Selection.Copy
Range("AY2").Select
ActiveSheet.Paste
Range("G251").Select
Application.CutCopyMode = False
Selection.Copy
Range("AZ2").Select
ActiveSheet.Paste
Range("B253").Select
Application.CutCopyMode = False
Selection.Copy
Range("BA2").Select
ActiveSheet.Paste

😕
 
Re : Reduction de formule

Re Olivier

Si il s'agit de copier une cellule tu peux le faire comme dans la ligne de code ci dessous

Code:
Range("A251").Copy Range("AS2")

Dans l'exemple ci dessus, tu copies la cellule A251, et tu colles le contenu dans la cellule AS2.

Tu n'as plus qu'a répéter cette ligne en changeant les références des cellules.

@+
 
Re : Reduction de formule

Bonjour Olyxier, bonjour le forum,

Attention Olyxier tu ne parles pas de formules mais de code VBA. J'ai failli ne pas ouvrir ton post car je suis vraiment nul en formules...

Je te propose le code suivant :

Code:
Sub Macro1()
Range("A251").Copy Destination:=Range("AS2")
Range("C254").Copy Destination:=Application.Union(Range("AT2"), Range("BB2"))
Range("B251").Copy Destination:=Range("AW2")
Range("B252").Copy Destination:=Range("AX2")
Range("O124").Copy Destination:=Range("AY2")
Range("G251").Copy Destination:=Range("AZ2")
Range("B253").Copy Destination:=Range("BA2")
Application.CutCopyMode = False
End Sub

Édition :

Oops ! Bonjour Pierrot on s'est croisés... Je vois qu'on a eu la même idée mais merci car je ne savais pas qu'on pouvait la formuler comme ça,
 
Re : Reduction de formule

Bonsoir le fil, bonsoir le forum,

Oui Bebere mais avec ce code il faut préciser que tu n'obtiens que les valeurs. Le copy sera nécessaire si tu veux aussi les couleurs, les quadrillages, les formats.
 
Re : Reduction de formule

Le probleme est que cela ne marche pas 😕
Case 1
Range("AS2").Value = Range("A137").Value
Range("C140").Value = Application.Union(Range("AT2"), Range("BB2").Value)
Range("AW2").Value = Range("B137").Value
Range("AX2").Value = Range("B138").Value
Range("AY2").Value = Range("O105").Value
Range("AZ2").Value = Range("G137").Value
Range("BA2").Value = Range("B139").Value
Application.CutCopyMode = False
 
Re : Reduction de formule

NOUVEAU probleme
lorsque je rentre le nombre 1 dans la case AP5 le debogeur ce met en route et le texte en rouge se souligne en jaune 😕

ElseIf Target.Address(0, 0) = "AP5" Then

Select Case Range("AP5").Value


Case 1
Range("A137").Copy = Range("AS2")
Range("C140").Copy = Application.Union(Range("AT2"), Range("BB2"))
Range("B137").Copy = Range("AW2")
Range("B138").Copy = Range("AX2")
Range("O105").Copy = Range("AY2")
Range("G137").Copy = Range("AZ2")
Range("B139").Copy = Range("BA2")
Application.CutCopyMode = False

merci de votre aide
 
Dernière édition:
Re : Reduction de formule

re Olivier

si tu utilise "copy" enlève le "=", par contre dans ton post de 19H07 je pense que c 'est cette ligne qui pose problème :

Code:
Range("C140").Value = Application.Union(Range("AT2"), Range("BB2").Value)

@+
 
Re : Reduction de formule

Re merci Pierrot93
mais cette ligne declanche encore le debogeur
Range("C140").Value = Application.Union(Range("AT2"), Range("BB2").Value)


ElseIf Target.Address(0, 0) = "AP5" Then

Select Case Range("AP5").Value


Case 1
Range("A137").Copy Range("AS2")
Range("C140").Value = Application.Union(Range("AT2"), Range("BB2").Value)
Range("B137").Copy Range("AW2")
Range("B138").Copy Range("AX2")
Range("O105").Copy Range("AY2")
Range("G137").Copy Range("AZ2")
Range("B139").Copy Range("BA2")
Application.CutCopyMode = False

dur dur
 
- 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
22
Affichages
3 K
Réponses
40
Affichages
3 K
Retour