Mettre le signe négatif dans certaines cellules
Résolu/Fermé
gercot1972
Messages postés
44
Date d'inscription
mardi 3 décembre 2013
Statut
Membre
Dernière intervention
4 février 2014
-
22 déc. 2013 à 22:18
gercot1972 Messages postés 44 Date d'inscription mardi 3 décembre 2013 Statut Membre Dernière intervention 4 février 2014 - 26 déc. 2013 à 20:29
gercot1972 Messages postés 44 Date d'inscription mardi 3 décembre 2013 Statut Membre Dernière intervention 4 février 2014 - 26 déc. 2013 à 20:29
A voir également:
- Comment mettre le signe moins dans une cellule excel
- Comment aller à la ligne dans une cellule excel - Guide
- Excel cellule couleur si condition texte - Guide
- Liste déroulante excel - Guide
- Verrouiller cellule excel - Guide
- Formule excel pour additionner plusieurs cellules - Guide
7 réponses
RachelMartel
Messages postés
435
Date d'inscription
mardi 14 mai 2013
Statut
Membre
Dernière intervention
24 mars 2021
25
22 déc. 2013 à 22:43
22 déc. 2013 à 22:43
Salut!
Je ne sais pas si ma solution sera la meilleure, mais voici ma proposition :
Tu pourrais faire une 4e colonne (D) avec la formule suivante :
=SI(C1="c";-B1;B1)
Dans cet exemple, la colonne B est ton montant et la C est ton débit/crédit.
Tu pourrais créer une macro qui créé la formule, qui copie la colonne D dans la colonne B en copiant la valeur uniquement.
:)
Je ne sais pas si ma solution sera la meilleure, mais voici ma proposition :
Tu pourrais faire une 4e colonne (D) avec la formule suivante :
=SI(C1="c";-B1;B1)
Dans cet exemple, la colonne B est ton montant et la C est ton débit/crédit.
Tu pourrais créer une macro qui créé la formule, qui copie la colonne D dans la colonne B en copiant la valeur uniquement.
:)
gercot1972
Messages postés
44
Date d'inscription
mardi 3 décembre 2013
Statut
Membre
Dernière intervention
4 février 2014
22 déc. 2013 à 22:54
22 déc. 2013 à 22:54
Le soucis , c est que je dois présenter le tableau:
- soit avec deux colonnes montant (1 pour le débit , une pour le crédit ); dans ce cas cette formule malheureusement (que j'ai déja essayé) ne fonctionne plus puisque les montants de références ne peuvent pas rester dans la colonne débit. ou alors il faut une macro qui créé une colonne "montant crédit" et déplace que le montant des cellules de la colonne montant si "C" se trouve dans la colonne "débit crédit"
-soit avec une seule colonne montant (qui regroupe les débits et crédits) mais avec les crédit en négatif
merci malgré tout de votre réponse
- soit avec deux colonnes montant (1 pour le débit , une pour le crédit ); dans ce cas cette formule malheureusement (que j'ai déja essayé) ne fonctionne plus puisque les montants de références ne peuvent pas rester dans la colonne débit. ou alors il faut une macro qui créé une colonne "montant crédit" et déplace que le montant des cellules de la colonne montant si "C" se trouve dans la colonne "débit crédit"
-soit avec une seule colonne montant (qui regroupe les débits et crédits) mais avec les crédit en négatif
merci malgré tout de votre réponse
RachelMartel
Messages postés
435
Date d'inscription
mardi 14 mai 2013
Statut
Membre
Dernière intervention
24 mars 2021
25
23 déc. 2013 à 16:50
23 déc. 2013 à 16:50
"-soit avec une seule colonne montant (qui regroupe les débits et crédits) mais avec les crédit en négatif"
Dans ce cas, ça fonctionne non?
Dans ce cas, ça fonctionne non?
Raymond PENTIER
Messages postés
58826
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
19 janvier 2025
17 273
23 déc. 2013 à 04:38
23 déc. 2013 à 04:38
Comment utilises-tu (en détail) la commande SOUS-TOTAL ?
Il serait certainement plus efficace d'utiliser la fonction SOMME.SI ...
Il serait certainement plus efficace d'utiliser la fonction SOMME.SI ...
gercot1972
Messages postés
44
Date d'inscription
mardi 3 décembre 2013
Statut
Membre
Dernière intervention
4 février 2014
23 déc. 2013 à 20:20
23 déc. 2013 à 20:20
voici mon document, j'espère que vous aurez accès a la macro
j'ai mis sur chaque onglet ce que je souhaite obtenir au final , ce qui n'est pas le cas actuellement à 100%
mes plus gros problèmes actuels sont:
mettre en négatif certain nombre
et le problème du nombre de ligne qui est différent tous les jours
bien à vous et merci d avance
https://www.cjoint.com/?0LxupFAHcPP
j'ai mis sur chaque onglet ce que je souhaite obtenir au final , ce qui n'est pas le cas actuellement à 100%
mes plus gros problèmes actuels sont:
mettre en négatif certain nombre
et le problème du nombre de ligne qui est différent tous les jours
bien à vous et merci d avance
https://www.cjoint.com/?0LxupFAHcPP
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 250
Modifié par eriiic le 23/12/2013 à 21:48
Modifié par eriiic le 23/12/2013 à 21:48
Bonsoir,
une proposition en vba.
Je n'ai pas recherché la performance absolue, qcq feuille à 2000 lignes ça devrait aller assez vite. Et ça sera plus simple à comprendre ;-)
Mettre à jour le nom des feuilles à traiter dans la constante listeF
Si tu veux faire en pas à pas (F8), met en commentaire 'Application.ScreenUpdating = False' pour voir l'évolution sur la feuille.
derLig est la dernière ligne à traiter. On la trouve en partant de la dernière lignes de la feuille, et on remonte vers le haut, sur une colonne qu'on sait complète.
A mettre dans un module standard :
Bonnes fêtes à tous
eric
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu lorsque c'est le cas (en haut vers votre titre).
Merci
une proposition en vba.
Je n'ai pas recherché la performance absolue, qcq feuille à 2000 lignes ça devrait aller assez vite. Et ça sera plus simple à comprendre ;-)
Mettre à jour le nom des feuilles à traiter dans la constante listeF
Si tu veux faire en pas à pas (F8), met en commentaire 'Application.ScreenUpdating = False' pour voir l'évolution sur la feuille.
derLig est la dernière ligne à traiter. On la trouve en partant de la dernière lignes de la feuille, et on remonte vers le haut, sur une colonne qu'on sait complète.
A mettre dans un module standard :
Option Explicit Sub C_Negatif() ' liste des feuilles à traiter, mettre une , finale Const listeF As String = "DETTES,47511 DETTES,475 MUT," Dim sh As Worksheet, c As Range Dim derlig As Long, lig As Long, colM As Long Application.ScreenUpdating = False For Each sh In Worksheets If InStr(listeF, sh.Name & ",") > 0 Then derlig = sh.Cells(Rows.Count, "D").End(xlUp).Row 'recherche colonne Montant, colonne Sens supposée juste après ' attention, sensible aux majuscules/minuscules Set c = sh.Rows(1).Find("montant", LookIn:=xlValues) If c Is Nothing Then MsgBox "'montant' non trouvé dans la feuille " & sh.Name Else colM = c.Column ' colonne "montant" For lig = 2 To derlig If sh.Cells(lig, colM) > 0 And sh.Cells(lig, colM + 1) = "C" Then ' si montant positif et sens C sh.Cells(lig, colM) = -sh.Cells(lig, colM) End If Next lig End If End If Next sh Application.ScreenUpdating = True End Sub
Bonnes fêtes à tous
eric
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu lorsque c'est le cas (en haut vers votre titre).
Merci
gercot1972
Messages postés
44
Date d'inscription
mardi 3 décembre 2013
Statut
Membre
Dernière intervention
4 février 2014
23 déc. 2013 à 22:32
23 déc. 2013 à 22:32
c'est génial Eric, mille merci ca fonctionne à merveille
j'ai plus qu'à bosser pour réunir tout ce que je veux
je te souhaite un joyeux noel et encore merci
j'ai plus qu'à bosser pour réunir tout ce que je veux
je te souhaite un joyeux noel et encore merci
bonjour
je suis un peux en retard mes bon ca peux te servir
http://cjoint.com/?3Lyk2bX5uoO
A+
Maurice
je suis un peux en retard mes bon ca peux te servir
http://cjoint.com/?3Lyk2bX5uoO
A+
Maurice
gercot1972
Messages postés
44
Date d'inscription
mardi 3 décembre 2013
Statut
Membre
Dernière intervention
4 février 2014
Modifié par gercot1972 le 26/12/2013 à 20:29
Modifié par gercot1972 le 26/12/2013 à 20:29
bonjour Maurice et bravo c'est super , ca va deja me faire gagner beaucoup de temps
peux tu me conseiller pour l'appliquer quotidiennement sur mon tableau, j'ouvre un nouveau classeur avec ma feuille A et ensuite j'applique tes macros une par une ? je vais tester des lundi
peux tu me conseiller pour l'appliquer quotidiennement sur mon tableau, j'ouvre un nouveau classeur avec ma feuille A et ensuite j'applique tes macros une par une ? je vais tester des lundi