[Résolu][Calc]Recherche dernière cellule suivant critère

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur : Vilains modOOs

Règles du forum
:alerte: 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 !
Claudius723
Membre lOOyal
Membre lOOyal
Messages : 43
Inscription : 06 févr. 2024 03:39

[Résolu][Calc]Recherche dernière cellule suivant critère

Message par Claudius723 »

Bonjour, je suis maintenant un peu familiarisé avec zBasic, mais je rencontre un problème, je voudrais extraire la valeur non vide de la dernière cellule d'une colonne suivant un critère : ci joint mes deux tableaux
Le critère est "Chèque n°" , colonne D2:D450, feuille "Recherche" et la valeur non vide est dans la colonne E2:E450, le résultat est à reporter dans la feuille "Resultat" cellule A2
Quelle fonction puis-utiliser?
Merci d'avance
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par micmac le 17 mai 2024 15:52, modifié 1 fois.
Raison : Balisage
Libre Office 24.2.4.2 /UBUNTU Package 4:24.2.4_rc2-Oubuntu0.22.04.1/ zBasic 3.0.6. Od/CPU Intel Core I7 / Nvidia GF108GL / Ram 16 Gb
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 26242
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: [Calc]Recherche dernière cellule suivant critère

Message par Dude »

Salut,

Une macro ne fait rien d'autre qu'automatiser des actions que tu ferais via menu ou dialogue.
Donc, explique nous pas-à-pas comment tu ferais cette recherche manuellement ?

Tu noteras qu'il y a un savoureux mélange dans tes numéros de chèque qui sont tantôt numérique ou texte :
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Jeff
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 10038
Inscription : 18 sept. 2006 09:40
Localisation : France

Re: [Calc]Recherche dernière cellule suivant critère

Message par Jeff »

Bonjour,
Dude a écrit : ↑16 mai 2024 06:08 explique nous pas-à-pas comment tu ferais cette recherche manuellement ?
+ 1

De même, est-ce que le recours à une macro est indispensable, car cela est faisable par formule.

Je n'ai pas de version AOO sous la main pour tester avec ton fichier joint, mais une formule du type :

Code : Tout sélectionner

=INDIRECT("E"&MAX(LIGNE(A2:A450)*((D2:D450)="Chèque n°")*NON(ESTVIDE(E2:E450))))
validée matriciellement (Ctrl + Maj + Entrée) devrait faire l'affaire, et récupérer la donnée, qu'elle soit chiffre ou texte.

A +
 
 Ajout : Ce qui donne avec ton classeur et les référence de feuilles correctes :

Code : Tout sélectionner

=INDIRECT("Recherche.E"&MAX(LIGNE(A2:A450)*((Recherche.D2:D450)="Chèque n°")*NON(ESTVIDE(Recherche.E2:E450))))
 
À lire avant tout !

Pour télécharger Apache OpenOffice

AOO 4.1.16 / Debian 13 "Trixie" / Xfce
AOO 4.1.15 / Debian 11 "Bullseye" / Cinnamon
Claudius723
Membre lOOyal
Membre lOOyal
Messages : 43
Inscription : 06 févr. 2024 03:39

Re: [Calc]Recherche dernière cellule suivant critère

Message par Claudius723 »

Bonjour Dude, cela ne marche pas , en fait la valeur recherchée doit être dans ce cas : dernière cellule non vide avec Chèque n° = "7258961"
Libre Office 24.2.4.2 /UBUNTU Package 4:24.2.4_rc2-Oubuntu0.22.04.1/ zBasic 3.0.6. Od/CPU Intel Core I7 / Nvidia GF108GL / Ram 16 Gb
Jeff
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 10038
Inscription : 18 sept. 2006 09:40
Localisation : France

Re: [Calc]Recherche dernière cellule suivant critère

Message par Jeff »

Qu'est-ce qui ne "marche pas" ? Merci de détailler
À lire avant tout !

Pour télécharger Apache OpenOffice

AOO 4.1.16 / Debian 13 "Trixie" / Xfce
AOO 4.1.15 / Debian 11 "Bullseye" / Cinnamon
Claudius723
Membre lOOyal
Membre lOOyal
Messages : 43
Inscription : 06 févr. 2024 03:39

Re: [Calc]Recherche dernière cellule suivant critère

Message par Claudius723 »

La réponse est "# NOM ? ", j'ai supprimé les données texte dans la colonne E, il n'y a plus que des nombres, mais le résultat est le mème.
Libre Office 24.2.4.2 /UBUNTU Package 4:24.2.4_rc2-Oubuntu0.22.04.1/ zBasic 3.0.6. Od/CPU Intel Core I7 / Nvidia GF108GL / Ram 16 Gb
Jeff
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 10038
Inscription : 18 sept. 2006 09:40
Localisation : France

Re: [Calc]Recherche dernière cellule suivant critère

Message par Jeff »

On ne sait plus à qui tu réponds :fou:
Dude a écrit : ↑16 mai 2024 06:08 explique nous pas-à-pas comment tu ferais cette recherche manuellement ?

Tu noteras qu'il y a un savoureux mélange dans tes numéros de chèque qui sont tantôt numérique ou texte
Réponds déjà sur ça.
Jeff a écrit : ↑16 mai 2024 12:57 est-ce que le recours à une macro est indispensable
Réponds ensuite sur ça.
Claudius723 a écrit : ↑17 mai 2024 08:57 La réponse est "# NOM ?
fais nous une capture d'écran avec la cellule en erreur et la barre de formule visible.

A +
À lire avant tout !

Pour télécharger Apache OpenOffice

AOO 4.1.16 / Debian 13 "Trixie" / Xfce
AOO 4.1.15 / Debian 11 "Bullseye" / Cinnamon
Avatar de l’utilisateur
Oukcha
RespOOnsable modération
RespOOnsable modération
Messages : 4371
Inscription : 06 oct. 2008 08:03

Re: [Calc]Recherche dernière cellule suivant critère

Message par Oukcha »

@ Claudius723 :
  • si votre question concerne les macro, postez à la suite
  • si votre question concerne une formule, postez en section Tableur
Cordialement
                                        
Pour tout savoir sur le fonctionnement de ce forum :arrow: À lire avant tout ! Image
Claudius723
Membre lOOyal
Membre lOOyal
Messages : 43
Inscription : 06 févr. 2024 03:39

Re: [Calc]Recherche dernière cellule suivant critère

Message par Claudius723 »

Effectivement, ma question portera sur une formule, donc je passe sur tableur.
La modération vous a écrit: La suite ici : viewtopic.php?t=68734.

Sujet balisé par la modération

Libre Office 24.2.4.2 /UBUNTU Package 4:24.2.4_rc2-Oubuntu0.22.04.1/ zBasic 3.0.6. Od/CPU Intel Core I7 / Nvidia GF108GL / Ram 16 Gb
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 26242
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: [Résolu][Calc]Recherche dernière cellule suivant critère

Message par Dude »

La meilleure macro est celle qu'on ne fait pas. :)
Il convient toujours de privilégier ce que le logiciel sait faire nativement.

Via codage avec zBasic, on aurait pu arriver au même résultat avec une belle gymnastique pour filtrer sur une feuille temporaire :

Code : Tout sélectionner

Sub Main
	GlobalScope.BasicLibraries.loadLibrary("zBasic")
	'Filtre temporaire 
	Dim oFiltre as variant
	laPlage = zPlage.Occupation ("Recherche")
	oFiltre = zFiltre.Demarre("Recherche", laPlage)
	zFiltre.Parametre(oFiltre, "entete", "O")
	zFiltre.Colonne(oFiltre, 4, "", 2, "N", "Chèque n°")
	zFeuille.Cree("Tempo")
	zFiltre.Execute(oFiltre, "Tempo", "A1")
	'Récupèrons l'info dans la dernière ligne
	laPlage = zPlage.Occupation ("Tempo") 
	laCellule = Split(laPlage, ":")
	leContenu = zCellule.Lit("Tempo", laCellule(1), "C")
	zCellule.Ecrit("Resultat", "A2", "C", leContenu)
	'Suppression du filtre
	zFeuille.Supprime("Tempo")
End Sub