[Résolu] [Calc] Liste déroulante avec des nombres

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 !
khoeds
Fraîchement OOthentifié
Messages : 9
Inscription : 03 août 2018 06:56

[Résolu] [Calc] Liste déroulante avec des nombres

Message par khoeds »

Bonjour,

Je cherche à insérer dans une cellule une liste déroulante, voici la fonction que j'ai trouvée et légèrement modifiée :

Code : Tout sélectionner

Function Liste_Cellule(Cellule as object, liste) 'liste as tableau de string
	Dim strVal as string
	strVal=""
	For i=0 to UBound(liste)
		if strVal ="" then
			strVal = Trim(CStr(liste(i)))
		else
			strVal = strVal & chr(10) & Trim(CStr(liste(i)))
		end if
	Next i
	cVal = Cellule.getPropertyValue("Validation")
	With cVal
	    .IgnoreBlankCells = False
	    .setPropertyValue("ErrorAlertStyle" , com.sun.star.sheet.ValidationAlertStyle.STOP)
	    .setPropertyValue("Type", com.sun.star.sheet.ValidationType.LIST)
	    .setPropertyValue("Operator", com.sun.star.sheet.ConditionOperator.EQUAL)
	    .setPropertyValue("ShowErrorMessage", true)
	    .setPropertyValue("ErrorTitle", "Erreur de saisie")
	    .setPropertyValue("ErrorMessage", "Saisir uniquement une valeur de la liste")
	    .setPropertyValue("ShowList", com.sun.star.sheet.TableValidationVisibility.SORTEDASCENDING)
	    .setFormula1(strVal) 'Testé avec "" & strVal & "" sans plus de résultat
	    .setPropertyValue("formula2","0")
	End With
	Cellule.setPropertyValue("Validation",cVal)
'	Cellule.string=strVal
End function
Elle fonctionne si :

Code : Tout sélectionner

liste(0)="aaaaa"
liste(1)="bbbbb"
Par contre ne fonctionne pas si:

Code : Tout sélectionner

liste(0)="56891"
liste(1)="14865"
J'obtiens dans ma liste Err:509

Je n'ai rien trouvé pour l'instant, si quelqu'un à une piste de recherche, je suis preneur.

Merci d'avance
Dernière modification par khoeds le 23 mars 2019 21:01, modifié 4 fois.
LibreOffice 6 32 bit sous Windows 10 64 bit
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 18:07
Localisation : Guyane

Re: [Calc] [Basic] Liste déroulante avec des nombres

Message par Piaf »

Bonjour
Peut-être

Code : Tout sélectionner

   For i=0 to UBound(liste)
      if strVal ="" then
         strVal = Chr(34) & Trim(CStr(liste(i))) & Chr(34)
      else
         strVal = strVal & chr(59) & Chr (34) & Trim(CStr(liste(i))) & Chr(34)
      end if
   Next i
A+
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
khoeds
Fraîchement OOthentifié
Messages : 9
Inscription : 03 août 2018 06:56

Re: [Calc] Liste déroulante avec des nombres

Message par khoeds »

Bravo et merci beaucoup, c'est exactement ça
LibreOffice 6 32 bit sous Windows 10 64 bit