[Résolu][Calc] Fonction GoTo, Else, Then, etc..
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 !
-
- NéOOphyte
- Messages : 13
- Inscription : 18 nov. 2024 12:48
[Résolu][Calc] Fonction GoTo, Else, Then, etc..
Bonjour à tous. Venant du forum tableur Calc je pose ma question ici. Je voudrai faire une programmation sur une feuille de Calc. C'est à dire : Dans une cellule (A4) j'ai un nombre (100), dans une autre cellule (B9) j'écris un Test du genre "=SI(A4=100). Et suivant le résultat de ce test, si c'est vrai je vais (par une fonction ou macro genre GoTO) dans une cellule faire un calcul et, si c'est faux, je vais dans une autre cellule faire un autre calcul. On me dit qu'il n'existe pas de fonction GoTo dans Calc et qu'il faut que je passe par une Macro. Seulement je ne sais pas faire une Macro. Quelqu'un peut-il m'aider à créer une Macro de ce genre ? Avec force détails, SVP, car, à 78 ans, je ne maitrise pas encore très bien LO que j'ai en version 24.8.1 et que je suis sur Windows 11.
Dernière modification par Oukcha le 20 nov. 2024 05:01, modifié 1 fois.
Raison : Balisage dans le premier message
Raison : Balisage dans le premier message
Libre Office 24.8.1 sur Windows 11
-
- HédOOniste
- Messages : 1756
- Inscription : 15 déc. 2010 08:33
Re: [Calc] Fonction GoTo, Else, Then, etc..
Bonjour
Cela pourrait se faire dans une formule exemple SI(A4=100; ce calcul ; cet autre calcul )
C'est à dire
Si A4 =100
Alors ce calcul
Sinon cet autre calcul
Il faudrait un exemple de classeur plus précis pour montrer ces deux calculs
Quel est ce calcul ?
Quel est cet autre calcul ?
Cela pourrait se faire dans une formule exemple SI(A4=100; ce calcul ; cet autre calcul )
C'est à dire
Si A4 =100
Alors ce calcul
Sinon cet autre calcul
Il faudrait un exemple de classeur plus précis pour montrer ces deux calculs
OpenOffice 4.1.14 sous Windows 10
-
- NéOOphyte
- Messages : 13
- Inscription : 18 nov. 2024 12:48
Re: [Calc] Fonction GoTo, Else, Then, etc..
Bonjour yclik. Non, peut importe les calculs ! Ce que je veux c'est de partir de cette cellule (de résultat) et aller dans une autre cellule (x) ou une autre (y) suivant le résultat du test. Ce que je veux faire c'est de la programmation (en Basic, je crois) avec des GoTo, If, Then et Else afin d'aller à un endroit de la feuille de calcul ou à un autre suivant les résultats d'un test. Ne pas ce focaliser sur les calculs à faire suivant les résultats des tests. J'ai déjà fait de la programmation comme cela sur une calculette CASIO Graph 100 mais je veux pouvoir le réaliser sur une feuille Calc. Alors, pour être encore plus précis : j'ai crée un programme sur CASIO Graph 100 pour calculer les Jours Julien depuis la date d'origine (le 1er Janvier -4712 jusqu'à aujourd'hui et même jusqu'en 2500 !!). Avec le logiciel de l'IMCCE (Astronomie : éphémérides, bureau des longitudes, etc...) on a ces calculs tout fait ! Mais j'ai voulu le faire de moi-même. Alors que leur logiciel ne tient pas compte des possibilités de demander des Jours Julien pour des dates incorrectes (genre 30 Février ou 45 Janvier) le mien trouve ces dates incongrues et me sort un résultat adéquat (genre : cette date n'existe pas ou encore il me donne le Jour Julien de la date correspondant au 30 Février qui est le 1 Mars ou du 45 Janvier qui est le 15 Février). Donc, mon programme fonctionne à merveille !! Mais sur ma CASIO ! Ce que je veux faire c'est le faire travailler sur une feuille Calc. Capito ? J'espère que je ne suis pas trop long !!
Libre Office 24.8.1 sur Windows 11
-
- HédOOniste
- Messages : 1756
- Inscription : 15 déc. 2010 08:33
Re: [Calc] Fonction GoTo, Else, Then, etc..
Bonjour
une proposition dans ce classeur Le déclenchement de la macro se fait par une formule en D6
qui appelle une Function
et pour aller sur les cellules
une proposition dans ce classeur Le déclenchement de la macro se fait par une formule en D6
Code : Tout sélectionner
=TESTSELECTION(C6)
Code : Tout sélectionner
function TestSelection (arg1 as double)
If arg1 = 100 then call maSelectionB4 else maSelectionB10
end Function
Code : Tout sélectionner
Sub maSelectionB4
dim oDoc As Object
Dim oSheets as object
Dim oSheet As Object
Dim oCell as Object
oDoc = ThisComponent
oSheet = oDoc.Sheets.getByName("Feuille1")
oCell = oSheet.getCellRangeByName("B4")
oDoc.CurrentController.select(oCell)
end sub
Sub maSelectionB10
dim oDoc As Object
Dim oSheets as object
Dim oSheet As Object
Dim oCell as Object
oDoc = ThisComponent
oSheet = oDoc.Sheets.getByName("Feuille1")
oCell = oSheet.getCellRangeByName("B10")
oDoc.CurrentController.select(oCell)
end sub
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
OpenOffice 4.1.14 sous Windows 10
-
- NéOOphyte
- Messages : 13
- Inscription : 18 nov. 2024 12:48
[Résolu]Re: [Calc] Fonction GoTo, Else, Then, etc..
Bon bah tant pis Merci à yclik et à tous les autres qui se sont défoncés pour moi mais j'abandonne !! Je suis déjà suffisamment content d'avoir réalisé mon programme sur ma CASIO mais poursuivre sur une feuille Calc me semble un peu beaucoup trop compliqué pour moi !! Vous êtes tous supers sympas. Ah, j'espère avoir clos le sujet en mettant les balises ?
Libre Office 24.8.1 sur Windows 11
-
- SuppOOrter
- Messages : 1298
- Inscription : 10 nov. 2006 15:04
- Localisation : F-Oise
Re: [Calc] Fonction GoTo, Else, Then, etc..
Bonsoir,
Cela ne va pas faire avancer la problématique, mais serait-il possible d'écrire de manière plus lisible ?
Proposer ces pavés de texte... sans aération... n'est pas très convivial à lire.
Cordialement.
Cela ne va pas faire avancer la problématique, mais serait-il possible d'écrire de manière plus lisible ?
Proposer ces pavés de texte... sans aération... n'est pas très convivial à lire.
Cordialement.
Ekel
KUbuntu Noble Numbat (24.04) : LibreOffice 24.8.0.3 Officielle
AMD Ryzen 5 5600G
AMD Radeon RX 6650 XT
22" + 22"
16 Go
____________________
Pour les règles du jeu.
Pour marquer Résolu.
Pour joindre un fichier.
KUbuntu Noble Numbat (24.04) : LibreOffice 24.8.0.3 Officielle
AMD Ryzen 5 5600G
AMD Radeon RX 6650 XT
22" + 22"
16 Go
____________________
Pour les règles du jeu.
Pour marquer Résolu.
Pour joindre un fichier.
-
- GourOOu
- Messages : 9814
- Inscription : 18 sept. 2006 09:40
- Localisation : France
Re: [Résolu][Calc] Fonction GoTo, Else, Then, etc..
Bonjour,
Si tel est le cas, sur quoi se baser ?
J'ai trouvé cette page sur Wikipedia :
https://fr.m.wikipedia.org/wiki/Formule ... A9gorienne
Si c'est cela que tu cherches, ça me semble adaptable hors macro
(Donc poster un nouveau sujet en section Tableur avec le titre que je te suggère)
A +
C'est peut-être cette question que tu aurais dû poser...
Si tel est le cas, sur quoi se baser ?
J'ai trouvé cette page sur Wikipedia :
https://fr.m.wikipedia.org/wiki/Formule ... A9gorienne
Si c'est cela que tu cherches, ça me semble adaptable hors macro
(Donc poster un nouveau sujet en section Tableur avec le titre que je te suggère)
A +
-
- NéOOphyte
- Messages : 13
- Inscription : 18 nov. 2024 12:48
Re: [Résolu][Calc] Fonction GoTo, Else, Then, etc..
Je réponds à Jeff. Non, non, ce n'est pas ça que je cherche ! Ça, je l'ai déjà depuis longtemps ! Je l'ai programmé sur ma CASIO Graph 100 il y a près de 20 ans, quand je travaillais encore à l'Observatoire Astronomique du Pic du Midi ! J'ai même construit l'organigramme de ce programme sur une feuille Calc ! Et même, toujours sur une feuille Calc, j'ai rentré ligne par ligne, colonne par colonne, feuille par feuille, tous les Jours Julien, du 1er Janvier -4712 jusqu'au 31 Décembre 2500 !! C'est pourquoi, je peux affirmer que le logiciel de l'IMCCE n'est pas au top et qu'il ne répond pas toujours idéalement à une date (inhabituelle, genre 32 Février 1871 par exemple) alors que mon programme prévoit TOUS les cas de dates normales et anormales !! Bonsoir à toutes et tous. Non, ce que je voulais faire (mais ça me semble trop compliqué) c'était de faire ce même programme que j'ai dans ma CASIO, le faire sur une feuille Calc. Mais bon, tant pis, ça me semble trop compliqué et donc je renonce ! Merci quand même à tous.
Libre Office 24.8.1 sur Windows 11
-
- SuppOOrter
- Messages : 1478
- Inscription : 18 janv. 2008 09:02
- Localisation : Val de Marne
Re: [Résolu][Calc] Fonction GoTo, Else, Then, etc..
Bonsoir,
Je ne comprends pas bien ce que veut dire "je vais dans une autre cellule" ?
Il faudrait définir ce qui relève du programme, et ce qui relève de l'affichage (qui peut être réalisé avec calc)
Comme toujours en programmation :
Cordialement,
Je ne comprends pas bien ce que veut dire "je vais dans une autre cellule" ?
Il faudrait définir ce qui relève du programme, et ce qui relève de l'affichage (qui peut être réalisé avec calc)
Comme toujours en programmation :
- Quelles sont les entrées ?
- Quel traitement leur appliquer
- Quels sont les résultats et les sorties (affichages)
Cordialement,
Jean-Michel
LibO 24.2 et AoO 4.1.15 sur Windows 11 & Ubuntu 22.04
LibO 24.8 sur OpenSuse & Linux MX
LibO 24.2 et AoO 4.1.15 sur Windows 11 & Ubuntu 22.04
LibO 24.8 sur OpenSuse & Linux MX
-
- NéOOphyte
- Messages : 13
- Inscription : 18 nov. 2024 12:48
Re: [Résolu][Calc] Fonction GoTo, Else, Then, etc..
Bonjour jeanmi2403. Comme demandé, voici mon organigramme qui organise les commandes de mon programme qui calcule les JJ depuis l'origine (1er Janvier -4712 jusqu'en l'an 2500 !! Attention !!! Hein !!! C'est MON organigramme !! C'est MON programme !!! Heu....j'y tiens !! Je ne l'ai pas déposé !!!
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre Office 24.8.1 sur Windows 11
-
- NéOOphyte
- Messages : 13
- Inscription : 18 nov. 2024 12:48
Re: [Résolu][Calc] Fonction GoTo, Else, Then, etc..
Donc, si vous suivez bien mon organigramme, vous devriez bien comprendre ma question principale qui est : comment, sur une feuille de tableur Calc, et dans une cellule (B10 par exemple), faire un test d'une valeur contenue dans une cellule (E14 par exemple) et suivant le résultat de ce test,(si VRAI), aller dans une cellule (A12 par exemple) et si FAUX aller dans une autre cellule (C5 par exemple) où, dans chacune de ces cellule, peut exister un autre test, etc, etc... alors par une fonction GoTo, Then, Else qui n'existe pas dans LibO ou bien une Macro. Le problème, pour moi, c'est que je ne sais pas faire des Macros !! Encore une fois mille merci à celui ou celle qui me montrera comment réaliser ce truc !
Libre Office 24.8.1 sur Windows 11
-
- NéOOphyte
- Messages : 13
- Inscription : 18 nov. 2024 12:48
Re: [Résolu][Calc] Fonction GoTo, Else, Then, etc..
Au fait, je revois ce que yclik écrit plus haut (sous le lien : selection_cellule.ods). Je pense que toutes les lignes d'Instructions qui démarrent à :"TOUT SELECTIONNER" font parti d'une Macro ?! Non ? Ce qui veut dire que, à chaque "GoTo" que j'ai besoin dans mon programme, il faudra que j'écrive autant de Macro aussi longue ? Non, c'est pas possible . Mon programme va se rallonger de 3 kilomètres !!!
Les programmeurs qui ont construit LibO ne pourraient-ils pas plutôt crée cette fonction supplémentaire dans le listing des fonctions en y incluant la structure complète (GoTo, Then, Else, YfThen, etc...), tout le monde aurait à y gagner, non ?
Les programmeurs qui ont construit LibO ne pourraient-ils pas plutôt crée cette fonction supplémentaire dans le listing des fonctions en y incluant la structure complète (GoTo, Then, Else, YfThen, etc...), tout le monde aurait à y gagner, non ?
Libre Office 24.8.1 sur Windows 11
-
- RespOOnsable modération
- Messages : 4132
- Inscription : 06 oct. 2008 08:03
Re: [Résolu][Calc] Fonction GoTo, Else, Then, etc..
Bonjour,
.
Dans tous les cas, merci de ne pas faire dériver ce fil de discussion.
Cordialement
Soit ce fil de discussion est résolu (comme l'atteste a priori le balisage actuel), soit :
.
.
Dans tous les cas, merci de ne pas faire dériver ce fil de discussion.
Cordialement
Pour tout savoir sur le fonctionnement de ce forum À lire avant tout !
-
- SuppOOrter
- Messages : 1478
- Inscription : 18 janv. 2008 09:02
- Localisation : Val de Marne
Re: [Résolu][Calc] Fonction GoTo, Else, Then, etc..
Bonjour,
Le tableur n'est pas un langage de programmation. C' est un ensemble de cellules contenant des données ou des formules.
Il y a bien un langage de programmation dans Libo (de même que dans la suite Office de XXCrosoft) seulement, il n'est pas dédié qu'au tableur.
Il peut travailler sur des éléments de Calc, Writer, Base...
Avec les programmes écrits dans ce langage, vous pouvez examiner le contenu d'une cellule, et en fonction de son contenu, examiner d'autres cellules et prendre des décisions avec les éléments de structuration IF THEN que vous réclamez et qui y sont bien présents. Et même créer vos propres fonctions.
A lire : Débuter en OooBasic d'Andrew Pitonyak.
Je me pencherai sur votre organigramme ce week end.
En attendant vous pouvez réfléchir à la manière de rentrer les données et d'afficher les résultats dans Calc, en tenant compte de l'organisation présentée dans mon message précédent.
Cordialement,
C'est un langage de programmation (Basic) qui doit ressembler à celui de votre Casio avec IF THEN ELSE, GOTo (bien que GOTO ne soit pas recommandé en programmation structurée...)Lamber66 a écrit : Le problème, pour moi, c'est que je ne sais pas faire des Macros
J'ai bien compris ce que vous souhaitez faire, mais votre vision des choses est faussée par la manière dont vous l'envisagez, qui n'est pas le principe de fonctionnement du tableur.Donc, si vous suivez bien mon organigramme, vous devriez bien comprendre
Le tableur n'est pas un langage de programmation. C' est un ensemble de cellules contenant des données ou des formules.
Ouh la la ! Qui sommes nous pour dire aux concepteurs d'une suite bureautique comment elle devrait fonctionner, selon vous ?Les programmeurs qui ont construit LibO ne pourraient-ils pas plutôt crée cette fonction supplémentaire dans le listing des fonctions en y incluant la structure complète (GoTo, Then, Else, YfThen, etc...), tout le monde aurait à y gagner, non ?
Il y a bien un langage de programmation dans Libo (de même que dans la suite Office de XXCrosoft) seulement, il n'est pas dédié qu'au tableur.
Il peut travailler sur des éléments de Calc, Writer, Base...
Avec les programmes écrits dans ce langage, vous pouvez examiner le contenu d'une cellule, et en fonction de son contenu, examiner d'autres cellules et prendre des décisions avec les éléments de structuration IF THEN que vous réclamez et qui y sont bien présents. Et même créer vos propres fonctions.
A lire : Débuter en OooBasic d'Andrew Pitonyak.
Je me pencherai sur votre organigramme ce week end.
En attendant vous pouvez réfléchir à la manière de rentrer les données et d'afficher les résultats dans Calc, en tenant compte de l'organisation présentée dans mon message précédent.
Cordialement,
Jean-Michel
LibO 24.2 et AoO 4.1.15 sur Windows 11 & Ubuntu 22.04
LibO 24.8 sur OpenSuse & Linux MX
LibO 24.2 et AoO 4.1.15 sur Windows 11 & Ubuntu 22.04
LibO 24.8 sur OpenSuse & Linux MX
-
- NéOOphyte
- Messages : 13
- Inscription : 18 nov. 2024 12:48
Re: [Résolu][Calc] Fonction GoTo, Else, Then, etc..
OK ! J'ai compris ! J'arrête tout !! Amicalement votre !! Simplement, si quelqu'un s'intéresse de près à mon programme et/ou à mon organigramme j'autorise qu'on lui passe mon adresse mail. Merci.
Libre Office 24.8.1 sur Windows 11