Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Futur Membre du Club
    Problème lors de la mise à jour d'une formule excel
    Bonjour à tous,

    J'ai déjà exécuté avec succès la requête suivante:

    Code formule :Sélectionner tout -Visualiser dans une fenêtre à part
    =SI(OU(ET(E5=O5;F5=P5);ET(E5=P5;O5=F5));"Oui";"")


    Actuellement, je souhaiterais précéder cette formule par l'élément de comparaison ci-après: C5 <> M5.

    Ainsi, la formule devient:

    Code formule :Sélectionner tout -Visualiser dans une fenêtre à part
    =SI  C5<>M ET   SI(OU(ET(E5=O5;F5=P5);ET(E5=P5;O5=F5));"Oui";"")


    A l'exécution, le message suivant s'affiche dans la cellule contenant la formule:

    #NOM?
    Je vous remercie de m'aider à corriger cette erreur.

    alagsar1

  2. #2
    Membre chevronné
    Saluts,
    1 - la regle d'ecriture des formules n'autorise l'espace que dans les expressions chaines entre guillemets " ". ="La date est : "&Aujourdhui().


    2 - Une fonction de calcul sur excel avec ou sans parametres/arguments exige toujours les parentheses (). =FuncName(arg1;arg2Func(arg)...).


    Pour Le besoin, il peut s'ecrire de plusieurs manieres :
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    SI(ET(C5<>M5;OU(ET(E5=O5;F5=P5);ET(E5=P5;O5=F5)));"Oui";"")
    Ousmane


    Quand on tombe dans l'eau, la pluie ne fait plus peur.

  3. #3
    Futur Membre du Club
    Comment rattacher les noms des données aux noms des fichiers en excel 2007
    Bonjour Mr NVCfrm,

    Je vous remercie pour la solution à mon problème.
    J'ai fait les tests sur les colonnes avec un seul fichier excel et les résultats sont satisfaisants.

    Actuellement, je voudrais étendre les tests sur les colonnes de 2 (deux) fichiers différents, et je voudrais savoir comment rattacher les noms des fichiers aux feuilles contenant les données. Par exemple, pour l'exemple ci-dessus à savoir:

    Code formule :Sélectionner tout -Visualiser dans une fenêtre à part
    SI(ET(C5<>M5;OU(ET(E5=O5;F5=P5);ET(E5=P5;O5=F5)));"Oui";"")


    Comment ré-écrire cette formule lorsque les colonnes C5, E5, F5 appartiennent au fichier nommé Fic1 et les colonnes M5 O5 P5 appartiennent au fichier nommé Fic2.

    Je vous remercie de m'aider à résoudre ce problème.

    alagsar1

  4. #4
    Membre chevronné
    Bonjour.
    Comment ré-écrire cette formule lorsque les colonnes C5, E5, F5 appartiennent au fichier nommé Fic1 et les colonnes M5 O5 P5 appartiennent au fichier nommé Fic2.
    Alors, je te recommandes de passer par la case depart : A savoir, des cours sur la prise en charge, l'edition de formules, les notions de base.
    Il doit y avoir un certain nombre de cours ici https://excel.developpez.com/cours/?page=prog, qui doivent te permettre rapidement de faire face a ses "difficultes primaires".
    Ousmane


    Quand on tombe dans l'eau, la pluie ne fait plus peur.

  5. #5
    Responsable
    Office & Excel

    Salut.

    Les formules inter-classeurs sont à proscrire, car sources de déboires et de perte de fiabilité. il est de loin préférable de rapatrier les données dans un seul classeur et de travailler "en local"...



    Citation Envoyé par NVCfrm Voir le message
    [...]
    1 - la regle d'ecriture des formules n'autorise l'espace que dans les expressions chaines entre guillemets[...]
    Hum... Excel accepte sans soucis des espaces ailleurs que dans les chaines de caractères, comme ici par exemple: =A1 & B1
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Une fois pour toutes, je donne mon avis. Je ne vais pas le répéter à chaque message...
    Si je propose une solution générique sur votre solution spécifique, c'est parce que, fainéant de nature, je privilégie le réutilisable...
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  6. #6
    Membre chevronné
    Bonjour,
    Citation Envoyé par Pierre Fauconnier Voir le message
    Salut.

    Les formules inter-classeurs sont à proscrire, car sources de déboires et de perte de fiabilité. il est de loin préférable de rapatrier les données dans un seul classeur et de travailler "en local"...





    Hum... Excel accepte sans soucis des espaces ailleurs que dans les chaines de caractères, comme ici par exemple: =A1 & B1
    L'exception qui confirme la règle.
    Il y en a bien d'autres pour peu que l'analyseur syntaxique arrive a évaluer l'expression avec les opérateurs tels que : & + - * etc .
    Du coup c'est un bon rappel qui modère quelque peu la solennité du propos plus haut soulignant une mauvaise pratique , car sources potentielles de déboires comme tu aimes le dire dans d'autres cas.

    Et rien ne nous empêchait de rester dans la considération que : Nous parlons de règles d’écritures et non d'exceptions permises, ...

    Edit
    : La pensee etant plus rapide que l'ecriture, il arrive que par cette derniere, des pensees soient tronquees.
    Et :
    Du coup c'est un bon rappel qui modère quelque peu la solennité exclusive du propos plus haut soulignant une mauvaise pratique , car sources potentielles de déboires comme tu aimes le dire dans d'autres cas.
    Vu que l'espace est aussi un operateur d'intersection de 2 plage, on se trouve evidemment devant de potentiels problemes en l'utilisant que ce pour lequel il a ete prevu.. D'ou la Regle d'ecriture sans espace et l'inutilite d'apporter des details soi disants ... au propos.
    Ousmane


    Quand on tombe dans l'eau, la pluie ne fait plus peur.

  7. #7
    Responsable
    Office & Excel

    il faut évidemment mettre les espaces au bon endroit. Ma remarque ne justifie nullement de mettre des espaces n'importe où, mais souligne qu'il est possible d'en mettre à certains endroits, notamment pour améliorer la lisibilité de la formule. C'est juste ce fait technique que je voulais souligner. Dommage que tu l'aies mal pris.

    Dans le cas présenté ici, le problème n'était nullement un problème d'espaces, mais bien de syntaxe. Je prône bien évidemment le respect des règles syntaxiques et rédactionnelles, lorsqu'elles ont un fondement technique. Lorsqu'elles existent "pour exister" et ne servent à rien, ce ne sont pas des règles, mais des dogmes et des inepties.





    Citation Envoyé par NVCfrm Voir le message
    [...]
    1 - la regle d'ecriture des formules n'autorise l'espace que dans les expressions chaines entre guillemets[...]
    Citation Envoyé par NVCfrm Voir le message
    [...]Vu que l'espace est aussi un operateur d'intersection de 2 plage, on se trouve evidemment devant de potentiels problemes en l'utilisant que ce pour lequel il a ete prevu.. D'ou la Regle d'ecriture sans espace et l'inutilite d'apporter des details soi disants ... au propos.
    Faudrait savoir. C'est uniquement permis dans les expressions chaine ou bien c'est aussi permis pour déterminer l'intersection de deux plages? Parce qu'à force de te contredire, on ne sait plus ce que tu veux exprimer... Contredire pour le plaisir de contredire, c'est loin d'être productif (mais permis quand on agit avec un pseudo qui cache son idendité). Amène des arguments techniques probants et on reparle, mais ne te cache pas derrière un pseudo pour critiquer les réponses et remarques des membres qui répondent, eux, à visage découvert, exposant ainsi leur réputation (ce qui amène à ne pas pouvoir dire n'importe quoi).
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Une fois pour toutes, je donne mon avis. Je ne vais pas le répéter à chaque message...
    Si je propose une solution générique sur votre solution spécifique, c'est parce que, fainéant de nature, je privilégie le réutilisable...
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  8. #8
    Membre chevronné
    Citation Envoyé par Pierre Fauconnier Voir le message
    ...
    Le premier paragraph de ce msg était assez fort et très suffisant pour remettre les choses a leur place.
    Pour le reste, je m'interroge toujours sur cet acharnement a radoter et traiter tout le monde con par la relève de fausses contradictions.
    Citation Envoyé par Pierre Fauconnier Voir le message
    Amène des arguments techniques probants et on reparle, mais ne te cache pas derrière un pseudo pour critiquer les réponses et remarques des membres qui répondent à visage découvert.
    Cela devient finalement une obsession avec les pseudos qui donnent un léger anoymat..

    ----
    Il y a quelque chose d'important a souligner (comme ce peut être le cas de certain ici):
    Je ne souffres d'aucun complexe de supériorités dans ces sujets ici, puisque j'estime que je pourrais toujours apprendre quelque chose de nouveau de n'importe qui.

    Le but n'étant pas d'impressionner ou montrer une supériorité quelconque dans la connaissance de rouages secrets, mais d'expliquer les grands principes a quelqu'un qui parait ne pas les connaître.

    Quand a ce petit jeu inutile, juste pour s'affirmer, je crois avoir dépassé ce stade. J'ai grandi et j'en ai conscience, bon sang !

    De plus entre autres, si je venais juste d'arriver dans cette discussion avec ce genre d’enfantillages pour intervenir comme tu le fais, je dirais au sujet de ta première remarque sur les références externes a localiser nécessairement, pour de soi-disant déboires potentielles, qu'elle ne vaut rien a côté d'autres considérations.
    Ce qui n'apportera rien a ton point de vue figé sur une considération exclusive, si ce n'est d'inutiles échanges polémiques.

    Comme ce fut le cas, dans un précédent (pas si vieux que ca), je me suis rendu compte de l’inutilité de la poursuite d’échanges, vu qu'il n’était pas question pour toi d'accepter d'autres réalités tout a fait valables, juste parce que tu veux montrer qu'on peut faire autrement, au point de denier la justification d'une technique du module VBA.DateTime. Un léger soupçon des fonds sur cet exemple t'aurait évité des polémiques inutiles.

    Si certaines possibilités, sont la, c'est qu'elles peuvent être absolument nécessaires dans certaines situations que tu n'as pas connu, que tu ne connaîtras peut être jamais. Ne crois pas que c'est par jeu de caprices, que ces fonctionnalités sont la.
    Ne pas confondre les nécessités du besoin au besoin et ne pas confondre l’utilité du besoin aux usages non utiles.
    Bonne soirée.
    ____________________________________________________________________________
    MMMouais avec de telles remarques on signe le contraire : quelqu'1 ki passons tan tachair chez Kerel. Impots sans exo.
    Ousmane


    Quand on tombe dans l'eau, la pluie ne fait plus peur.

  9. #9
    Responsable
    Office & Excel

    J'ai suffisamment d'expérience avec Excel (VBA compris) pour savoir et pouvoir affirmer et prouver que les formules inter-classeurs ne sont pas une bonne chose, permises par Excel ou pas. Je ne connais pas ton expérience en Excel (VBA compris) et ne me permettrais pas de la mettre en doute, mais j'attends les arguments techniques* qui nécessitent les formules interclasseurs alors que, bien avant 2007, d'autres techniques solides, s'appuyant sur une conception de classeur solide et respectant les règles.

    Si tu penses avoir un cas où cette construction est indispensable, propose-le moi et je te le démonterai en 1 minute. Ce n'est pas pour faire le malin ou dire "c'est moi qui ai la plus grosse", c'est juste que c'est comme cela, que j'ai testé les solutions proposées par ceux qui contredisaient cette évidence et qu'il y a toujours une solution plus stable, pérenne, évolutive et surtout fiable. Cela peut ne pas te plaire, c'est ainsi.

    Mais au lieu de palabrer, vas-y, lance un débat avec des formules interclasseurs sur le forum. Il est là, aussi, pour le débat. J'y participerai avec plaisir

    * J'attends évidemment des vrais arguments techniques, pas des phrases creuses du genre "si ça existe, c'est que c'est utile". Ca, ça ne rime à rien et il n'y a rien de technique là-dedans.

    Quant au problème vba.datetime, merci de me faire parvenir le lien (ici ou par mp), car je n'ai pas souvenir de la chose. Comme déjà dit maintes fois, je prends des positions techniques argumentées. Si mes arguments ne plaisent pas, démontez-les avec des arguments techniques, et il y aura alors débat bénéfique. Il n'y a souvent qu'une bonne manière de coder, parfois deux, très rarement trois. Débattre techniquement sur des cas concrets en avançant des arguments technique est très intéressant et fait progresser. Je doute avoir contesté un argument technique qui était inattaquable.


    Au passage, je suis fatigué que des gens sur le forum se sentent attaqués personnellement sur le forum dès que l'on conteste la pertinence technique de leur solution.
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Une fois pour toutes, je donne mon avis. Je ne vais pas le répéter à chaque message...
    Si je propose une solution générique sur votre solution spécifique, c'est parce que, fainéant de nature, je privilégie le réutilisable...
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  10. #10
    Membre chevronné
    J'ai suffisamment d'expérience avec Excel (VBA compris) pour savoir et pouvoir affirmer et prouver que les formules inter-classeurs ne sont pas une bonne chose, ...
    Ce que j'admets, en excluant le reste.
    ---

    Mais au lieu de palabrer, vas-y, lance un débat avec des formules interclasseurs sur le forum. Il est là, aussi, pour le débat. J'y participerai avec plaisir
    On peut discuter avec quelqu'un qui est disposé à considérer les différents angles de tir, les différents environnements ou écosystèmes qui privilégient un angle de tir sur un autre.
    Citation Envoyé par moi
    ... Ce qui n'apportera rien a ton point de vue figé sur une considération exclusive, si ce n'est d'inutiles échanges polémiques. ...
    Il n'est pas question d'argumenter dans de tels cas, vu.
    Ousmane


    Quand on tombe dans l'eau, la pluie ne fait plus peur.

###raw>template_hook.ano_emploi###