[Résolu][Calc] Détection doublons
Modérateur : Vilains modOOs
Règles du forum
Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
-
- Membre OOrganisé
- Messages : 72
- Inscription : 09 mai 2022 19:33
[Résolu][Calc] Détection doublons
Bonjour
J'ai un tableau avec 3 colonnes. Je cherche un code VBA pour repéré un éventuel doublon dans ces colonnes et lui adapter un style.
J'ai commencé bien sur en entrant une formule dans la gestion du formatage conditionnel = NB.SI(($E$11:$E$24~$I$11:$I$24~$M$11:$M$24);E11)>1 ....elle fonctionne très bien.
Cependant je dois souvent faire des glissés de cellule d'un tableau vers un autre et je perds la mise en forme conditionnelle de la cellule concerné , raison pour laquelle je souhaiterais intégrer un code VBA.
Merci pour l'aide apportée....
Cdlt
No
J'ai un tableau avec 3 colonnes. Je cherche un code VBA pour repéré un éventuel doublon dans ces colonnes et lui adapter un style.
J'ai commencé bien sur en entrant une formule dans la gestion du formatage conditionnel = NB.SI(($E$11:$E$24~$I$11:$I$24~$M$11:$M$24);E11)>1 ....elle fonctionne très bien.
Cependant je dois souvent faire des glissés de cellule d'un tableau vers un autre et je perds la mise en forme conditionnelle de la cellule concerné , raison pour laquelle je souhaiterais intégrer un code VBA.
Merci pour l'aide apportée....
Cdlt
No
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par BERNO le 10 mai 2023 11:58, modifié 1 fois.
7.3.6.2 libre Office Community Mac OS 12.6.5
-
- IdOOle de la suite
- Messages : 25181
- Inscription : 03 mars 2006 07:45
- Localisation : 127.0.0.1
Re: [Calc] Détection doublons
Salut,
Programmer nécessite un minimum d'investissement.
On t'a déjà dit, me semble t-il, d'utiliser XRay pour comprendre les propriétés/méthodes d'un objet.
Pour ton problème qui est assez complexe, voici quelques pistes pour démarrer...
Tu définis la plage concernée : L'objet com.sun.star.sheet.SheetCellRanges contient l'interface ConditionalFormat.
Il faut traduire ta formule en anglais et l'insérer par la méthode addNew.
Tu branches ta macro sur l'évènement de feuille "Sélection modifiée".
Tu as cet exemple pour démarrer : viewtopic.php?t=49964
Programmer nécessite un minimum d'investissement.
On t'a déjà dit, me semble t-il, d'utiliser XRay pour comprendre les propriétés/méthodes d'un objet.
Pour ton problème qui est assez complexe, voici quelques pistes pour démarrer...
Tu définis la plage concernée :
Code : Tout sélectionner
$E$11:$E$24~$I$11:$I$24~$M$11:$M$24
Il faut traduire ta formule en anglais et l'insérer par la méthode addNew.
Tu branches ta macro sur l'évènement de feuille "Sélection modifiée".
Tu as cet exemple pour démarrer : viewtopic.php?t=49964
-
- PassiOOnné
- Messages : 669
- Inscription : 20 déc. 2017 14:45
Re: [Calc] Détection doublons
Bonjour,
Je vous ai répondu ici : viewtopic.php?t=67162
En faisant bien les choses, vous vous passerez de macro.
Je vous ai répondu ici : viewtopic.php?t=67162
En faisant bien les choses, vous vous passerez de macro.
OpenOffice 4.1.15 - Windows 10
-
- Membre OOrganisé
- Messages : 72
- Inscription : 09 mai 2022 19:33
Re: [Calc] Détection doublons
Bonjour Rollmops
Je vous ai répondu sur l'autre fil
Merci , mais cette solution ne me convient par rapport à ce que je souhaiterais .
Cdlt
Je vous ai répondu sur l'autre fil
Merci , mais cette solution ne me convient par rapport à ce que je souhaiterais .
Cdlt
7.3.6.2 libre Office Community Mac OS 12.6.5
-
- PassiOOnné
- Messages : 669
- Inscription : 20 déc. 2017 14:45
Re: [Calc] Détection doublons
Pourquoi donc ? Cette solution permet de continuer à conserver les MFC.
Sinon, il vous reste à programmer la macro de dude.
OpenOffice 4.1.15 - Windows 10
-
- Membre OOrganisé
- Messages : 72
- Inscription : 09 mai 2022 19:33
Re: [Calc] Détection doublons
Bjr
Parce que je souhaite quelque chose de plus simple au quotidien , beaucoup de glissé et plusieurs manipulateurs
Oui je préfèrerais une macro mais comme l'écrit Dude
"Pour ton problème qui est assez complexe,"
Donc vu mon niveau, je galère.......
Parce que je souhaite quelque chose de plus simple au quotidien , beaucoup de glissé et plusieurs manipulateurs
Oui je préfèrerais une macro mais comme l'écrit Dude
"Pour ton problème qui est assez complexe,"
Donc vu mon niveau, je galère.......
7.3.6.2 libre Office Community Mac OS 12.6.5
-
- RespOOnsable forum
- Messages : 12230
- Inscription : 08 nov. 2005 16:23
- Localisation : Caen, France
Re: [Calc] Détection doublons
Le titre de la question est incorrect et ne reflète pas le problème décrit.
Il s'agit de : conserver une MFC si contenu glissée à la souris
Merci de corriger en ce sens.
On rappelle qu'un titre explicite n'est pas pour vous mais pour tous ceux effectuant des recherches.
-
- Membre OOrganisé
- Messages : 72
- Inscription : 09 mai 2022 19:33
Re: [Calc] Détection doublons
Non, non, il s'agit bien de trouver un code VBA pour détecter le doublon
7.3.6.2 libre Office Community Mac OS 12.6.5
-
- RespOOnsable forum
- Messages : 12230
- Inscription : 08 nov. 2005 16:23
- Localisation : Caen, France
Re: [Calc] Détection doublons
Dans votre document, la détection de doublons est faite par une MFC.
Et VBA = Microsoft donc rien à voir avec le Basic.
Et VBA = Microsoft donc rien à voir avec le Basic.
-
- Membre OOrganisé
- Messages : 72
- Inscription : 09 mai 2022 19:33
Re: [Calc] Détection doublons
oui en effet, c'est que j'explique tes bien dans mon premier message...
"j'ai un document avec une formule qui détecte le doublon...."
Et j'ajoute ensuite :
mais j'aimerais que cette détection passe avec un code VBA"
"j'ai un document avec une formule qui détecte le doublon...."
Et j'ajoute ensuite :
mais j'aimerais que cette détection passe avec un code VBA"
7.3.6.2 libre Office Community Mac OS 12.6.5
-
- RespOOnsable forum
- Messages : 12230
- Inscription : 08 nov. 2005 16:23
- Localisation : Caen, France
Re: [Calc] Détection doublons
Et donc, il ne s'agit pas de décrire le contenu d'un document mais l'objectif à atteindre.
Ce que vous avez formulé dans votre 1er message :
-
- Membre OOrganisé
- Messages : 72
- Inscription : 09 mai 2022 19:33
Re: [Calc] Détection doublons
j'explique ce que je recherche (objectif à atteindre )
Je cherche un code VBA pour repéré un éventuel doublon dans ces colonnes et lui adapter un style.
j'explique pourquoi
J'ai commencé bien sur en entrant une formule dans la gestion du formatage conditionnel = NB.SI(($E$11:$E$24~$I$11:$I$24~$M$11:$M$24);E11)>1 ....elle fonctionne très bien.
Cependant je dois souvent faire des glissés de cellule d'un tableau vers un autre et je perds la mise en forme conditionnelle de la cellule concerné ,
je souhaiterais intégrer un code VBA.
Je cherche un code VBA pour repéré un éventuel doublon dans ces colonnes et lui adapter un style.
j'explique pourquoi
J'ai commencé bien sur en entrant une formule dans la gestion du formatage conditionnel = NB.SI(($E$11:$E$24~$I$11:$I$24~$M$11:$M$24);E11)>1 ....elle fonctionne très bien.
Cependant je dois souvent faire des glissés de cellule d'un tableau vers un autre et je perds la mise en forme conditionnelle de la cellule concerné ,
je souhaiterais intégrer un code VBA.
7.3.6.2 libre Office Community Mac OS 12.6.5
-
- IdOOle de la suite
- Messages : 25181
- Inscription : 03 mars 2006 07:45
- Localisation : 127.0.0.1
Re: [Calc] Détection doublons
La détection de doublons, tu l'as déjà avec la MFC.
Donc ton objectif est bien de pouvoir conserver celle-ci après toute opération de modification.
Comme OOotremer971 te l'a dit :
Voici un exemple qui recopie la MFC dès lors qu'un contenu est modifié dans les cellules concernées :
Donc ton objectif est bien de pouvoir conserver celle-ci après toute opération de modification.
Dans ce cas, pourquoi s'obstiner à vouloir faire des macros puisqu'au final, tu ne comptes pas t'investir ?
Comme OOotremer971 te l'a dit :
OOotremer971 a écrit : ↑18 avr. 2023 17:40 Tes échanges demeurent obscures sur les objectifs que tu cherches à atteindre au final, nous pourrions probablement gagner du temps (temps de réflexion pas forcement utiles) si nous les connaissions en amont.
Voici un exemple qui recopie la MFC dès lors qu'un contenu est modifié dans les cellules concernées :
Code : Tout sélectionner
Sub MajMFC
sPlage = "$E$11:$E$24;$I$11:$I$24;$M$11:$M$24"
oFeuil = ThisComponent.CurrentController.ActiveSheet
aPlage = Split(sPlage, ";")
for i = 0 to UBound(aPlage)
oPlage = oFeuil.getCellRangeByName(aPlage(i))
With oPlage
nFeuil = .RangeAddress.Sheet
ColDeb = .RangeAddress.StartColumn
LigDeb = .RangeAddress.StartRow
ColFin = .RangeAddress.EndColumn
LigFin = .RangeAddress.EndRow
end with
for j = ColDeb to ColFin
for k = LigDeb to LigFin
Dim aCell(2)
aCell(0) = nFeuil : aCell(1) = j : aCell(2) = k
if not AjouteMFC(aCell, sPlage) then
msgbox "Erreur" : exit for
endif
next
next
next
End sub
Function AjouteMFC(aCell, sPlage)
oCell = ThisComponent.Sheets.getByIndex(aCell(0)).GetCellByPosition(aCell(1),aCell(2))
sAdr = oCell.AbsoluteName
sFormule = "COUNTIF((" & sPlage & ");"& sAdr &")>1"
Dim aMFC(3) As New com.sun.star.beans.PropertyValue
aMFC(0).Name = "Operator"
aMFC(0).Value = com.sun.star.sheet.ConditionOperator.FORMULA
aMFC(1).Name = "Formula1"
aMFC(1).Value = sFormule
aMFC(2).Name = "StyleName"
aMFC(2).Value = "DOUBLON2"
aMFC(3).Name = "SourcePosition"
aMFC(3).value = oCell.CellAddress
oMFC = oCell.ConditionalFormat
oMFC.clear()
oMFC.addNew(aMFC())
oCell.ConditionalFormat = oMFC
AjouteMFC = true
End Function
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
-
- Membre OOrganisé
- Messages : 72
- Inscription : 09 mai 2022 19:33
Re: [Calc] Détection doublons
Bonjour
Décidément , je dois mal m’expliquer …et donc mal me faire comprendre
J’ai en effet un tableau avec détection des doublons liée à une MFC.
Cependant, j’ai constaté que lorsque j’importais des cellules en les glissant dans ce tableau, je n’avais plus le repérage du doublon.
L’idée était donc de passer par une macro qui me permettrait d’éviter je pense, ce problème…
Je m’investis chaque jour, chaque soir, mais comme je démarre de loin, ce n’est pas évident pour moi….
Merci en tous les cas pour l’exemple sur lequel je vais me pencher....
Décidément , je dois mal m’expliquer …et donc mal me faire comprendre
J’ai en effet un tableau avec détection des doublons liée à une MFC.
Cependant, j’ai constaté que lorsque j’importais des cellules en les glissant dans ce tableau, je n’avais plus le repérage du doublon.
L’idée était donc de passer par une macro qui me permettrait d’éviter je pense, ce problème…
Je m’investis chaque jour, chaque soir, mais comme je démarre de loin, ce n’est pas évident pour moi….
Merci en tous les cas pour l’exemple sur lequel je vais me pencher....
7.3.6.2 libre Office Community Mac OS 12.6.5
-
- IdOOle de la suite
- Messages : 25181
- Inscription : 03 mars 2006 07:45
- Localisation : 127.0.0.1
Re: [Calc] Détection doublons
On a compris et c'est cela qui doit figurer dans le titre de ta question.
Ce n'est pas un problème de détection mais de conserver la MFC
Bis repetitae :
-
- Membre OOrganisé
- Messages : 72
- Inscription : 09 mai 2022 19:33
Re: [Calc] Détection doublons
Je ne l'ai pas mis dans la question car la cellule que j'importe d'un autre tableau n'a pas de MFC, donc elle ne peut pas la conserver...
mon idée est donc bien une recherche de doublon dans un tableau défini...
mon idée est donc bien une recherche de doublon dans un tableau défini...
7.3.6.2 libre Office Community Mac OS 12.6.5
-
- IdOOle de la suite
- Messages : 25181
- Inscription : 03 mars 2006 07:45
- Localisation : 127.0.0.1
-
- Membre OOrganisé
- Messages : 72
- Inscription : 09 mai 2022 19:33
Re: [Calc] Détection doublons
Bonjour
Désolé pour l'absence de ces derniers jours.
Le code fonctionne parfaitement, merci
J'ai essayé de le déchiffrer pour le comprendre et j'avoue que là c'est plus difficile.
Encore merci et bonne journée.
Cdlt
Désolé pour l'absence de ces derniers jours.
Le code fonctionne parfaitement, merci
J'ai essayé de le déchiffrer pour le comprendre et j'avoue que là c'est plus difficile.
Encore merci et bonne journée.
Cdlt
7.3.6.2 libre Office Community Mac OS 12.6.5