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

Macro pour multiplier données par -1

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 !

gnina1973

XLDnaute Occasionnel
Bonsoir

dans le fichier joint il ya deux onglets :

-1 onglet RETRA avec formules
-1 onglet RETRA

je voudrais que la macro qui est dans RETRA voir (module 1) soit completé d'une instruction supplementaire à savoir multiplier les donneés mensuelles par -1....
ensuite je voudrais mettre ce module 1 dans l'onglet RETRA avec formules et non pas RETRA , autrement dit je voudrais faire executer cette macro à partir de l'onglet RETRA AVEC FORMULES à l'aide d'un bouton de macro , et le resultat obtenu doit apparaitre sur un onglet qui se cree automatiquement qui se s'intitulerait RETRA

Voila mon pb

merci de m'aider
 

Pièces jointes

Re : Macro pour multiplier données par -1

Bonjour
pour multiplier par -1 voici le code
Sub Procstandard()
Dim I&, K&, Cll As Range, Rng As Range
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
K = Range("A65536").End(xlUp).Row + 1
Set Rng = Range("AD3").Resize(K, 12)
For I = I To Rng.Cells.Count
Rng(I) = Rng(I) * -1
Next
Set Rng = Nothing
Application.Calculation = xlCalculationAutomatic
End Sub
 
Re : Macro pour multiplier données par -1

Bonjour

j'ai essayé d'integrer votre code dans la macro deja existante mais cela ne fonctionne pas.

d'autre part , comment mettre cette macro dans l'onglet RETRA avec formules et creer un bouton directement sur cette onglet afin d'afficher le resultat obtenu sur un autre onglet nommé RETRA

Cdlt
 
Re : Macro pour multiplier données par -1

comment mettre cette macro dans l'onglet RETRA avec formules et creer un bouton directement sur cette onglet afin d'afficher le resultat obtenu sur un autre onglet nommé RETRA
Ça fait beaucoup de question en même temps.
(pas top de m'invectiver comme ça dans un autre fil)
Pour créer un bouton dans la feuille, affichez la boîte à outils contrôles, implantez un bouton, Cliquez deux fois dessus, dans la CommandButton_Click mettez le code qui doit s'exécuter.
Pouquoi vous n'arrivez pas à appliquer la proposition de flyonnets44, ça je ne sais pas, il faudrait re joindre ce que vous avez essayé.
 
Re : Macro pour multiplier données par -1

Eh bien je ne sais pas, le code de flyonnet est assez bon apparemment, sauf que je l'aurais écrit plutôt comme ça:
VB:
'multiplication des données mensuelles CA par -1
    Dim K As Long, Rng As Range, TV() As Variant, L As Long, C As Long
    K = Range("A65536").End(xlUp).Row + 1
    Set Rng = Range("AD3").Resize(K, 12)
    TV = Rng.Value
    For L = 1 To UBound(TV, 1)
      For C = 1 To UBound(TV, 2)
'         TV(L, C) = -TV(L, C) * -1 Correction :
         TV(L, C) = -TV(L, C) 
         Next C
      Next L
    Rng.Value = TV
Attention: vous avez une masse de noms de plages dans votre classeur qui renvoient vers des classeurs externes et sont pour la plupart en erreur #REF! Vous feriez bien de faire le ménage.
 
Dernière édition:
Re : Macro pour multiplier données par -1

Bonsoir,

clic bouton droit sur le nom de l'onglet puis visualiser le code.
Code:
Private Sub CommandButton1_Click()
  Dim C As Range, Dli As Long
    With Sheets("RETRCA")
        Dli = .Cells(Rows.Count, 1).End(xlUp).Row
        For Each C In .Range("O3:P" & Dli)
            C = Replace(C, "#", "")
            C = Replace(C, "Non affecté", "")
        Next
        .Range("R3:AO" & Dli).NumberFormat = "0.00"
        For Each C In .Range("R3:AO" & Dli).SpecialCells(xlCellTypeConstants)
            C = -C
        Next
        .Columns("AP:IV").Delete
    End With
    Range("A3").Select
End Sub
 

Pièces jointes

Re : Macro pour multiplier données par -1

Bonsoir fo_rum

merci pour votre code , mais lorsque je clique sur le bouton se trouvant sur l'onglet RETRA avec formules , rien ne se passe l'idée je le rapelle etant de mettre au format le fichier suivant les instructions decrites dans la macro et creer l'onglet mise au format RETRA
 
Re : Macro pour multiplier données par -1

Je rectifie ma position cela fonctionne en revanche , il manque une chose : en cliquant sur l'onglet sur le bouton j'aurais le resultat de la mise au format apparaisse via un onglet qui se cree automatiquement appele RETRA
en fait dans mon fichier exemple l'onglet RETRA n'est pas censé apparaitre dans le fichier , il apparait seulement quand on lance la macro

merci
 
Re : Macro pour multiplier données par -1

Merci Fo_rum le resultat escompté me convient , je vais tenter de comprendre votre macro , et je reviendrais vers vous
en cas de zone d'ombre , merci encore de partager vos connaissances

Cdlt
 
Re : Macro pour multiplier données par -1

Bonour Fo_rum
je ne comprends pas les lignes de code ci dessous, quel est l'intérêt

merci

'précaution suppression de RETRCA si elle existe déjà
Dim n As Byte
For n = 1 To Sheets.Count
If Sheets(n).Name = "RETRCA" Then
Application.DisplayAlerts = False
Sheets(n).Delete
Application.DisplayAlerts = True
Exit For
End If
 
- 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 macro vba sumifs
Réponses
5
Affichages
750
A
Réponses
2
Affichages
1 K
AlexAGEMS
A
M
Réponses
2
Affichages
954
marcenana
M
D
Réponses
11
Affichages
2 K
D
R
Réponses
21
Affichages
4 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…