[Calc] Suivi des ventes de tickets de tombola

Discussions sur les projets et applications développés en liaison avec une suite bureautique libre.

Modérateur: Vilains modOOs

[Calc] Suivi des ventes de tickets de tombola

Messagepar Zelada » 06 Fév 2014 23:39

Bonjour

Voici donc mon cahier des charges.

Créer un fichier pour le suivi des ventes de tickets de tombola.

1) Une page «  Menu » où des boutons permettent d'un simple clic d'ouvrir des boites de dialogue

2) Une boite de dialogue pour la prise en charge des tickets :
date du jour * numéro de lot * numéro de début * numéro de fin * valider * annuler
exemple :
25/01/14 * 4 * 22401 * 22500
vérification de la validité de la date
vérification que toutes les zones soient remplies
un clic sur le bouton valider va copier les données saisies sur la première ligne vide de la feuille « Tickets »


3) Une boite de dialogue pour la prise en charge des acheteurs
code * nom * valider * annuler
exemple :
00123 * zelada
le code est toujours de 5 lettres et peut commencer par zéro
Vérification de ne pas saisir 2 fois le même acheteur => message d’erreur
un clic sur le bouton valider va copier les données saisies sur la première ligne vide de la feuille «  Acheteurs »

4) Une boite de dialogue pour l'achat d'un certain nombre de tickets
n°lot * quantité de tickets disponibles * numéro de début * nombre de tickets achetés * code acheteur * acheteur * valider * annuler
exemple :
4 * 100 * 22401 * 45 * 00123 * zelada
si plus de ticket disponible message d'erreur " plus de ticket disponible changez de lot"
si nombre de tickets saisi supérieur au nombre de tickets restants => message d'erreur
si quantité de tickets disponibles, afficher le numéro de début
en sélectionnant dans une liste de choix le code acheteur, le nom de l'acheteur s'affiche automatiquement
un clic sur le bouton valider va copier les données saisies sur la première ligne vide de la feuille " Vente"

5) Une boite de dialogue pour afficher la dernière vente effectuée
Afficher les éléments saisies sur la feuille « Vente » dans la ligne juste avant la ligne vide
exemple :
Date * acheteur * lot * n°début * n° fin
30/12/13 * Jean * 2 * 4251 * 4280
ajouter bouton Quitter

6) Un bouton sur la page Menu pour imprimer le certificat de la vente effectuée.
Soit l'impression de la feuille « impression » avec remplissage automatique des données de la dernière ligne figurant sur la feuille « Vente »
Exemple :
La société certifie avoir vendu à Jean le 30/12/2013 des tickets n°4251 à 4280. Soit 30 tickets de tombola
Retour sur la page Menu

7) Un bouton sur la page Menu pour imprimer les ventes effectuées pour un acheteur.
Boite de dialogue qui demande le code de l'acheteur
exemple :
00123
Message voulez-vous imprimer pour (nom de l'acheteur) ici Zelada
Filtre de la feuille « Vente » sur le nom de l'acheteur
Impression
Suppression du filtre
retour à la page menu

Point 8 : Un bouton sur la page Menu pour imprimer les ventes effectuées pour une période. Boite de dialogue avec date de début * date de fin * valider * annuler
Sur la feuille Vente, filtre sur la date
Impression
Suppression du filtre
Retour sur la page menu

Si vous pensez à un code à ajouter pour éviter les erreurs de saisie, manip de l'utilisateur, ne pas hésiter

Ce projet va permettre de connaître les possibilités offertes avec les boites de dialogue.

Je n'ai fait qu'un simple fichier pour l'instant.

Merci d'avance

A+
Pièces jointes
gestion_tombola1.ods
(11.96 Kio) Téléchargé 245 fois
LibreOffice 3.6.5.2 (version imposée) sous Windows XP SP3 au bureau
Avatar de l’utilisateur
Zelada
InconditiOOnnel
InconditiOOnnel
 
Message(s) : 930
Inscrit le : 27 Fév 2013 15:55

Re: [Calc] Suivi des ventes de tickets de tombola

Messagepar jeanmimi » 07 Fév 2014 09:23

Bonjour,
Dans ton idée, prévois-tu faire de nombreux calculs et diagrammes ?
Parce que à te lire, ce que tu décris ressemble pas mal à une base de données.
LibreOffice Version : Version: 6.3.3.2 (x64) (4 novembre 2019)
Java (x64) 1.8.0_xxx, Windows 10, Thunderbird, Firefox
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 15070
Inscrit le : 03 Mars 2006 17:02
Localisation : Venise verte

Re: [Calc] Suivi des ventes de tickets de tombola

Messagepar Zelada » 07 Fév 2014 09:57

Bonjour

Merci de t'intéresser à mon projet

Non pas de nombreux calculs ni diagramme
Les seuls calculs sont déjà présents dans le classeur ( mais certains se feront sans doute via une macro)
A savoir :
- combien de tickets par lot
- combien de tickets vendus
- reste

On pourrait donc penser à une base de données mais il n'y aura
- qu'une dizaine de lots achetés par an
- qu'une centaine d'achats par an


Pour le peu de données à traiter, je ne pense pas qu'une base de données soit intéressante sachant en plus :
- que je ne connais pas du tout Base et cela ne s'apprend pas en 1 mois. ( Tenue par le temps...)
- que je ne suis pas encore convaincue que l'on puisse faire une "application sympa niveau présentation" ( en parlant de cela, si vous avez un lien vers une base très agréable à regarder / à utiliser, je suis très intéressée)
- que j'aimerais donc pour l'instant rester sur Calc et connaitre toutes ses possibilités notamment dans l'utilisation des boites de dialogue qui permettent de créer une "application" intéressante

Ce weekend je vais donc continuer à préparer ce fichier avec toutes les questions qui vont avec :wink:

A+
LibreOffice 3.6.5.2 (version imposée) sous Windows XP SP3 au bureau
Avatar de l’utilisateur
Zelada
InconditiOOnnel
InconditiOOnnel
 
Message(s) : 930
Inscrit le : 27 Fév 2013 15:55

Re: [Calc] Suivi des ventes de tickets de tombola

Messagepar Dude » 07 Fév 2014 10:39

Salut,

Je ne suis pas fan des boîtes de dialogue.
Surtout si tu permets à l'utilisateur de basculer de l'une à l'autre.
Pourquoi ne pas utiliser une feuille pour créer chaque formulaire ?
Avatar de l’utilisateur
Dude
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 21122
Inscrit le : 03 Mars 2006 08:45
Localisation : 127.0.0.1

Re: [Calc] Suivi des ventes de tickets de tombola

Messagepar Zelada » 07 Fév 2014 10:44

Salut

Peux-tu développer pourquoi tu n'es pas fan des boites de dialogue

L'idée d'utiliser une feuille pour créer chaque formulaire est intéressante

Quels avantages/inconvénients entre l'utilisation d'une feuille et une boite de dialogue

Merci d'avance

A+
LibreOffice 3.6.5.2 (version imposée) sous Windows XP SP3 au bureau
Avatar de l’utilisateur
Zelada
InconditiOOnnel
InconditiOOnnel
 
Message(s) : 930
Inscrit le : 27 Fév 2013 15:55

Re: [Calc] Suivi des ventes de tickets de tombola

Messagepar Zelada » 18 Fév 2014 12:57

Bonjour

Je reprends mon projet

Soit une feuille nommée pc_tickets permettant la saisie
Le bouton "Valider" doit (après avoir vérifier que les cellules C13 et C15 ne sont pas vides)
copier les cellules de C9, C11, C13 et C15 dans la feuille nommée Tickets dans la première ligne vide dans les colonnes de A à D et retour dans la feuille Menu en A1 et afficher ensuite" Saisie validée"

J'ai testé la vérification des cellules non vides => ok

Le fait de cliquer sur "Valider" affiche "Validation effectuée" super !pas d'erreur de code mais ...rien vu de copié :(

 Ajout : 16:52 

Après quelques recherches, j'ai trouvé le code

Code : Tout sélectionner   AgrandirRéduire
Sub RecopierPCTickets
Dim monDocument As Object, lesFeuilles As Object
Dim maFeuille As Object, maCellule As OBject
Dim oCel1 As Object, oCel2 As Object
Dim zoneVide As Variant
Dim maZone As Object
Dim celluleVide As Integer
Dim fDepart As Object, fArriv As Object
Dim zDepart As Object, cArriv As Object
Dim NumeroDepart as Object, NumeroFin as Object
monDocument = thisComponent
lesFeuilles = monDocument.Sheets   
   
    'Je désigne la feuille sur laquelle je travaille
     maFeuille = ThisComponent.getSheets.getByName("pc_tickets")

     'Test avant copie
    NumeroDepart = maFeuille.getCellRangeByName("C13")
    NumeroFin = maFeuille.getCellRangeByName("C15")
   
   'si cellule C13 vide
  If NumeroDepart.Type = com.sun.star.table.CellContentType.EMPTY Then
          MsgBox("Vous devez saisir le premier numéro du lot")
       Exit sub 
   
     
     ' si cellule C15 vide
     Elseif  NumeroFin.Type = com.sun.star.table.CellContentType.EMPTY Then
        MsgBox ("Vous devez saisir le dernier numéro du lot")
        Exit Sub
     
     
    Else ' tout va bien on exécute la macro


fDepart = ThisComponent.Sheets.getByName("pc_tickets")
fArriv = ThisComponent.Sheets.getByName("Tickets")   
   
   
    'Je désigne la feuille sur laquelle je travaille
     maFeuille = ThisComponent.getSheets.getByName("Tickets")
   
     'Affiche la feuille correspondante au cas où c'est autre feuille qui est affichée à l'écran (FACULTATIF)
     ThisComponent.CurrentController.ActiveSheet = maFeuille

     'Je désigne la zone sur laquelle je cherche une ligne vide de la manière suivante
     'Colonne A qui est ma colonne de référence.
     'Je commence à la ligne A2 (A2 comporte mes titres de mon tableau). donc la recherche commencera à partir de la ligne 3
     'Je termine à A500. Il ne faut pas hésiter à aller plus loin si le nombre de lignes
     'pouvant étre utiliser est supérieur (exemple: A500)   
    maZone = maFeuille.getCellRangeByName("A2:A500")
    zoneVide = maZone.queryEmptyCells.RangeAddresses
    'Je trouve la dernière ligne utilisée
    celluleVide = zoneVide(0).StartRow
    'J'ajoute 1 pour obtenir la ligne vide
    celluleVide = celluleVide + 1
   
    'Je vais à la ligne vide de la colonne A et 
    ' copier dans la Feuille Tickets dans la première ligne vide de la colonne A
    ' le contenu de la Feuille pc_tickets cellule C9 etc
    oCel1 = fDepart.getCellRangeByName("C9")
   oCel2 = fArriv.getCellRangeByName("A" & celluleVide)
   oCel2.string = oCel1.string      ' Texte
   
   oCel1 = fDepart.getCellRangeByName("C11")
   oCel2 = fArriv.getCellRangeByName("B" & celluleVide)
   oCel2.string = oCel1.string      ' Texte

   oCel1 = fDepart.getCellRangeByName("C13")
   oCel2 = fArriv.getCellRangeByName("C" & celluleVide)
   oCel2.string = oCel1.string      ' Texte
   
   oCel1 = fDepart.getCellRangeByName("C15")
   oCel2 = fArriv.getCellRangeByName("D" & celluleVide)
   oCel2.string = oCel1.string      ' Texte

   AccederMenu
   
   
   MsgBox(" Saisie validée", 64, "Prise en charge des tickets")   

end if


Si vous avez des observations, des améliorations, ne pas hésiter

Je continue ...

 Ajout : 17:00 

J'ai un souci :
la macro recopie mes cellules dans la feuille Tickets mais pour la colonne B elle considère comme du texte, de ce fait la formule en C11 de la feuille pc_tickets
Code : Tout sélectionner   AgrandirRéduire
=MAX(Tickets.B3:B99)+1

ne fonctionne plus :(

Merci d'avance
A+
Pièces jointes
gestion_tombola.ods
(17.61 Kio) Téléchargé 92 fois
LibreOffice 3.6.5.2 (version imposée) sous Windows XP SP3 au bureau
Avatar de l’utilisateur
Zelada
InconditiOOnnel
InconditiOOnnel
 
Message(s) : 930
Inscrit le : 27 Fév 2013 15:55

Re: [Calc] Suivi des ventes de tickets de tombola

Messagepar joel275 » 18 Fév 2014 17:40

Bonjour,

et en remplaçant:

Code : Tout sélectionner   AgrandirRéduire
oCel2.string = oCel1.string      ' Texte


par:

Code : Tout sélectionner   AgrandirRéduire
oCel2.Value = CDbl(oCel1.String)

CDbl qui convertit en nombre double précision; si tu n'as que des entiers, CLng() suffit

A plus,
Joël
OpenOffice 4.1.2 LibreOffice 6-2-8-2 Windows 8.1
joel275
PassiOOnné
PassiOOnné
 
Message(s) : 745
Inscrit le : 10 Jan 2009 09:05

Re: [Calc] Suivi des ventes de tickets de tombola

Messagepar Piaf » 18 Fév 2014 19:08

Bonsoir
Zelada a écrit:si vous avez un lien vers une base
Après, les goûts et les couleurs....
Un exemple avec Base (pas finalisé bien sur donc à tester :lol: ).
Plus facile qu'avec le fichier de l'autre fil où les données me paraissent incohérentes.
A+
Pièces jointes
TombolaZelada.odb
(163.67 Kio) Téléchargé 133 fois
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
Piaf
GourOOu
GourOOu
 
Message(s) : 5622
Inscrit le : 25 Nov 2011 19:07
Localisation : Guyane

Re: [Calc] Suivi des ventes de tickets de tombola

Messagepar Zelada » 18 Fév 2014 22:05

Bonsoir

Alors là ! je ne trouve pas l'émoticône qui va bien

Je suis bouche bée ( pour rester polie)

Avant d'arriver à ce stade, j'en aurai des cheveux blancs.

Passons aux critiques :lol: :

1) Logiquement, dans les bases de données relationnelles, on ne devrait pas pouvoir supprimer des acheteurs, si ces derniers ont fait des achats
Pourtant :
pas_d_acheteur.jpg


2) bien qu'un message d'avertissement prévient que le nombre saisi est supérieur au reste, il prend en compte l'enregistrement
nbr_pris_en_charge_a_tort.jpg


3) un montant négatif dans les restes,cela ne fait pas sérieux
reste_negatif.jpg


Ces trois remarques bien que pertinentes, ne doivent pas être mal prises.

Chapeau bas. :bravo:

Le pire est :
Comment améliorer ce produit sachant que je suis incapable déjà d'en arriver là.

J'en ai les bras coupés !

Allez c'est parti pour les questions de débutant :
pourquoi dans les relations, n'y a t il pas la table Acheteurs ?
Un lot => plusieurs ventes
un acheteur => plusieurs ventes
non ?

A+

********
Bonsoir joel275

joel275 a écrit:
Code : Tout sélectionner   AgrandirRéduire
oCel2.Value = CDbl(oCel1.String)

CDbl qui convertit en nombre double précision; si tu n'as que des entiers, CLng() suffit

A plus,
Joël


:super: merci c'est nickel !

A+

 Ajout : 08:39 

Bonjour

Après l'euphorie d'hier :lol: grosse déception ce matin :(
je teste la base au bureau sur trois ordinateurs (configurés conformément aux désirs de la direction)
- windows xp ApacheOpenOffice version 3.1.1
- windows xp LIbreoffice 3.6.5.2
- windows 7 LibreOffice 3.6.5.2

java 1.6.0_20 sur les trois ordinateurs

Erreur d'exécution BASIC
Une exception s'est produite :
Type : com.sun.star.sdbc. SQLException
Message : Impossible d'établir une connexion avec la source de données "TombolaZelada"


C'est la cata.

A+
LibreOffice 3.6.5.2 (version imposée) sous Windows XP SP3 au bureau
Avatar de l’utilisateur
Zelada
InconditiOOnnel
InconditiOOnnel
 
Message(s) : 930
Inscrit le : 27 Fév 2013 15:55

Re: [Calc] Suivi des ventes de tickets de tombola

Messagepar jeanmimi » 19 Fév 2014 09:39

Bonjour,
As-tu enregistré la Base sur les ordinateurs pour qu'elle soit connectable ?
LibreOffice Version : Version: 6.3.3.2 (x64) (4 novembre 2019)
Java (x64) 1.8.0_xxx, Windows 10, Thunderbird, Firefox
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 15070
Inscrit le : 03 Mars 2006 17:02
Localisation : Venise verte

Re: [Calc] Suivi des ventes de tickets de tombola

Messagepar Zelada » 19 Fév 2014 10:20

Bonjour jeanmimi

Oui, j'avais enregistré la base. J'ai donc supprimé puis enregistré de nouveau
- windows xp ApacheOpenOffice version 3.1.1 => toujours la même erreur
- windows xp LIbreoffice 3.6.5.2 => affichage du formulaire menu
- windows 7 LibreOffice 3.6.5.2 => affichage du formulaire menu

Par contre pour les deux ordinateurs avec LibreOffice, je peux d'un clic sur un bouton accéder aux formulaires mais affichage en double fenêtre ( la fenêtre en dessous affichant la barre des menus)
voir copie ci-dessous :
double_fenetre1.jpg

ou
double_fenetre2.jpg


Mais tant que cela ne fonctionne pas sur windows xp ApacheOpenOffice version 3.1.1, pas possible de continuer

A+
LibreOffice 3.6.5.2 (version imposée) sous Windows XP SP3 au bureau
Avatar de l’utilisateur
Zelada
InconditiOOnnel
InconditiOOnnel
 
Message(s) : 930
Inscrit le : 27 Fév 2013 15:55

Re: [Calc] Suivi des ventes de tickets de tombola

Messagepar Piaf » 19 Fév 2014 18:19

Bonjour
J'ai fais quelques modifs
Voir si cela fonctionne sous ton environnement.
A+
Pièces jointes
TombolaZelada2.odb
(163.39 Kio) Téléchargé 112 fois
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
Piaf
GourOOu
GourOOu
 
Message(s) : 5622
Inscrit le : 25 Nov 2011 19:07
Localisation : Guyane

Re: [Calc] Suivi des ventes de tickets de tombola

Messagepar Zelada » 20 Fév 2014 00:20

Bonsoir

Merci Piaf

Je testerai demain au bureau

 Ajout : 11:20 


Les modifications que tu as apportées sont très bien :super:

Seule chose, la boite de dialogue qui indique que l'on va supprimer un acheteur alors que non ( il faudrait une boite de dialogue personnalisée : impossible de supprimer un acheteur ayant déjà fait un achat

Par contre, toujours la double fenêtre qui s'efface après mais bon : c'est pas top
Cela est dû à quoi ce problème de rafraichissement ?

Par contre aussi toujours impossible d'ouvrir la base
sous Windows XP ApacheOpenOffice version 3.1.1 toujours la même erreur



A+
LibreOffice 3.6.5.2 (version imposée) sous Windows XP SP3 au bureau
Avatar de l’utilisateur
Zelada
InconditiOOnnel
InconditiOOnnel
 
Message(s) : 930
Inscrit le : 27 Fév 2013 15:55

Re: [Calc] Suivi des ventes de tickets de tombola

Messagepar Piaf » 22 Fév 2014 00:41

Bonsoir
Zelada a écrit:impossible de supprimer un acheteur ayant déjà fait un achat
Zelada a écrit:Logiquement, dans les bases de données relationnelles, on ne devrait pas pouvoir supprimer des acheteurs, si ces derniers ont fait des achats

Pour la double fenêtre ?
Zelada a écrit:sous Windows XP ApacheOpenOffice version 3.1.1 toujours la même erreur
Qu'elle Erreur ?
A+
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
Piaf
GourOOu
GourOOu
 
Message(s) : 5622
Inscrit le : 25 Nov 2011 19:07
Localisation : Guyane

Re: [Calc] Suivi des ventes de tickets de tombola

Messagepar Zelada » 22 Fév 2014 11:14

Bonjour

Concernant l'erreur sur l'ordinateur windows xp ApacheOpenOffice version 3.1.1 c'est

Après l'euphorie d'hier :lol: grosse déception ce matin :(
je teste la base au bureau sur trois ordinateurs (configurés conformément aux désirs de la direction)
- windows xp ApacheOpenOffice version 3.1.1
- windows xp LIbreoffice 3.6.5.2
- windows 7 LibreOffice 3.6.5.2

java 1.6.0_20 sur les trois ordinateurs

Erreur d'exécution BASIC
Une exception s'est produite :
Type : com.sun.star.sdbc. SQLException
Message : Impossible d'établir une connexion avec la source de données "TombolaZelada"

problème résolu pour ceux avec LibreOffice mais pas avec ApacheOpenOffice et c'est encore la majorité du parc
donc si cela ne fonctionne pas il faudra que je reste sur Calc

***************************

et pour les deux autres ordinateurs où j'arrive à faire fonctionner la base, j'ai toujours ce problème :
quelque soit le formulaire il s'affiche deux fois puis un seul reste à l'écran c'est pas top
par contre à la maison aucun souci

****************************

Concernant la suppression de l'acheteur :

je ne me contredis pas, mais si Zelada connait le principe des bases de données relationnelles, l'utilisateur de cette base ne le connait peut-être pas, d'où l'intérêt d'une fenêtre indiquant qu'il n'est pas possible de supprimer cet acheteur car il a déjà fait des achats

A+
LibreOffice 3.6.5.2 (version imposée) sous Windows XP SP3 au bureau
Avatar de l’utilisateur
Zelada
InconditiOOnnel
InconditiOOnnel
 
Message(s) : 930
Inscrit le : 27 Fév 2013 15:55

Re: [Calc] Suivi des ventes de tickets de tombola

Messagepar Zelada » 23 Fév 2014 09:19

Bonjour

Ayant des soucis avec Base je le fais provisoirement sous Calc

Dans la feuille pc_acheteurs, j'aimerais un contrôle sur le code saisi en E15 afin d'empêcher la saisie d'un acheteur déjà enregistré sur la feuille Acheteurs

J'ai ajouté ce code mais peu importe ce que je mets et même si je ne mets rien, il ne dit que le code est déjà présent

Code : Tout sélectionner   AgrandirRéduire
 
   'verifier si acheteur déjà enregistré
       ' On récupère le code sur la feuille pc_acheteurs
       CodeSaisie = ThisComponent.Sheets.getByName("pc_acheteurs").getCellByposition(4,14).getvalue
       ' On active la feuille Acheteurs
       maFeuille = ThisComponent.Sheets.getByName("Acheteurs")
       ' Et on repère la Dernière Ligne
       Curseur = maFeuille.createCursor()
       Curseur.gotoStartOfUsedArea(False)
       Curseur.gotoEndOfUsedArea(True)
       Cible  = Curseur.getRangeAddress()
       LigFin = Cible.EndRow
       ' On teste les codes en partant de la fin
       ' puisqu'on a (normalement) plus de chances de la trouver par là si elle existe
       ' ce qui doit permettre de sortir plus vite de la boucle
       For i = LigFin to 1 step -1
          ' pas la peine de tester la ligne 0, puisque ce sont les entêtes
          ' On récupère le code
          CodeAcheteur = ThisComponent.Sheets.getByName("Acheteurs").getCellByposition(0,i).getvalue
          If CodeAcheteur = CodeSaisie Then
             'Le code est présent dans Acheteurs : on le signale
             MsgBox "Code déjà présent"
             ' et on ne fait rien
             exit sub
          End if
       Next i
        '
    ' On continue


Merci d'avance

A+
Pièces jointes
gestion_tombola2210.ods
(22.79 Kio) Téléchargé 79 fois
LibreOffice 3.6.5.2 (version imposée) sous Windows XP SP3 au bureau
Avatar de l’utilisateur
Zelada
InconditiOOnnel
InconditiOOnnel
 
Message(s) : 930
Inscrit le : 27 Fév 2013 15:55

Re: [Calc] Suivi des ventes de tickets de tombola

Messagepar Zelada » 24 Fév 2014 14:02

Bonjour

N'arrivant pas à créer une macro qui permette de vérifier si un acheteur est déjà pris en charge :fou: , je tente de le faire avec affichage d'un message si la recherche du critère en F2 est vraie

si acheteur déjà présent => affichage du message Acheteur déjà crée

si acheteur non présent => j'aimerais que rien ne s'affiche mais j'ai un beau #N/D :(

Si vous avez une idée sachant que la solution sans macro n’empêchera pas l'utilisateur de le saisir quand même :evil:

Merci d'avance

A+
Pièces jointes
gestion_24022014.ods
(23.83 Kio) Téléchargé 79 fois
LibreOffice 3.6.5.2 (version imposée) sous Windows XP SP3 au bureau
Avatar de l’utilisateur
Zelada
InconditiOOnnel
InconditiOOnnel
 
Message(s) : 930
Inscrit le : 27 Fév 2013 15:55

Re: [Calc] Suivi des ventes de tickets de tombola

Messagepar Zelada » 12 Mars 2014 21:13

Bonsoir

Je me permets de remonter ce message en espérant que quelqu'un puisse répondre à ma dernière question

Merci d'avance

A+
LibreOffice 3.6.5.2 (version imposée) sous Windows XP SP3 au bureau
Avatar de l’utilisateur
Zelada
InconditiOOnnel
InconditiOOnnel
 
Message(s) : 930
Inscrit le : 27 Fév 2013 15:55

Re: [Calc] Suivi des ventes de tickets de tombola

Messagepar luky-luke » 13 Mars 2014 00:29

Bonsoir

Zelada a écrit:si acheteur non présent => j'aimerais que rien ne s'affiche mais j'ai un beau #N/D


Code : Tout sélectionner   AgrandirRéduire
=SI(ESTERREUR(F2<>0);"";"Acheteur déjà présent")


Et pour la macro, un descripteur de recherche, plus rapide qu'une boucle si beaucoup d'acheteurs.

Code : Tout sélectionner   AgrandirRéduire
Dim Cherche As Object, Trouve As Object, CodeSaisie As String       

       ' Et on repère la Dernière Ligne
       Curseur = maFeuille.createCursor()
       Curseur.gotoStartOfUsedArea(False)
       Curseur.gotoEndOfUsedArea(True)
       Cible  = Curseur.getRangeAddress()
       LigFin = Cible.EndRow
       MaZone = Mafeuille.GetCellRangeByPosition(0,1,0,LigFin)
       
       Cherche = MaZone.CreateSearchDescriptor
       With Cherche
             .SearchString = CodeSaisie
             .SearchWords = FALSE
          End With
          Trouve = MaZone.FindFirst(Cherche)
          
          If not isNull(Trouve) then MsgBox("Code déjà présent, On continue ?", 36, "AVERTISSEMENT")


Cordialement
Luke
Pièces jointes
gestion_13032014.ods
(27.79 Kio) Téléchargé 130 fois
AOO 4.1.3 et LibO 5.3.7.2 Ubuntu 16.04 LTS et Debian 9
Xray ne tient pas lieu de tout, mais une pratique sans Xray ne vaut pas grand chose
Avatar de l’utilisateur
luky-luke
InconditiOOnnel
InconditiOOnnel
 
Message(s) : 914
Inscrit le : 27 Nov 2010 01:17
Localisation : gâtine deux-sèvrienne

Re: [Calc] Suivi des ventes de tickets de tombola

Messagepar Zelada » 13 Mars 2014 21:56

Bonsoir luky-luke

Merci beaucoup :super:

Je continue.

A+
LibreOffice 3.6.5.2 (version imposée) sous Windows XP SP3 au bureau
Avatar de l’utilisateur
Zelada
InconditiOOnnel
InconditiOOnnel
 
Message(s) : 930
Inscrit le : 27 Fév 2013 15:55


Retour vers Projets

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 8 invité(s)