Powerbuilder pour les completement Geeks !

Le forum (ô combien francophone) des utilisateurs de Powerbuilder.

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.
  • Index
  •  » Powerscripts
  •  » [RESOLU] Définition et utilisation d'une Dropdown avec ole Excel via PB.

#1 16-10-2009 13:45:53

wazou1812  
Modératrice
Award: bf
Date d'inscription: 24-05-2006
Messages: 610
Pépites: 2,097
Banque: 3,536,631,712,504

[RESOLU] Définition et utilisation d'une Dropdown avec ole Excel via PB.

Bonjour,

Je cherche la bonne syntaxe pour faire avec PB via l'OLE Excel la définition d'une dropdown (définition d'une liste dans Excel) et l'utilisation de cette dropdown dans une autre feuille du fichier Excel sur certaines zones du fichier.


Merci d'avance,


Hors ligne

 

#2 19-10-2009 09:02:05

wazou1812  
Modératrice
Award: bf
Date d'inscription: 24-05-2006
Messages: 610
Pépites: 2,097
Banque: 3,536,631,712,504

Re: [RESOLU] Définition et utilisation d'une Dropdown avec ole Excel via PB.

wazou1812 a écrit:

Bonjour,

Je cherche la bonne syntaxe pour faire avec PB via l'OLE Excel la définition d'une dropdown (définition d'une liste dans Excel) et l'utilisation de cette dropdown dans une autre feuille du fichier Excel sur certaines zones du fichier.


Merci d'avance,


Coucou,

Alors la dropdown dans Excel avec Powerbuilder ça ne tente personne ???


Hors ligne

 

#3 20-10-2009 06:03:45

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: [RESOLU] Définition et utilisation d'une Dropdown avec ole Excel via PB.

Bonjour, les macros sont tes amies pour trouver la syntaxe :

Code: vb

With Selection.Validation
  .Delete
  .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
  xlBetween, Formula1:="=$A$2:$A$4"
  .IgnoreBlank = True
  .InCellDropdown = True
  .InputTitle = ""
  .ErrorTitle = ""
  .InputMessage = ""
  .ErrorMessage = ""
  .ShowInput = True
  .ShowError = True
End With

N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#4 20-10-2009 12:12:25

wazou1812  
Modératrice
Award: bf
Date d'inscription: 24-05-2006
Messages: 610
Pépites: 2,097
Banque: 3,536,631,712,504

Re: [RESOLU] Définition et utilisation d'une Dropdown avec ole Excel via PB.

erasorz a écrit:

Bonjour, les macros sont tes amies pour trouver la syntaxe :

Code: vb

With Selection.Validation
  .Delete
  .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
  xlBetween, Formula1:="=$A$2:$A$4"
  .IgnoreBlank = True
  .InCellDropdown = True
  .InputTitle = ""
  .ErrorTitle = ""
  .InputMessage = ""
  .ErrorMessage = ""
  .ShowInput = True
  .ShowError = True
End With

Bonjour,

Oui, mais après le plus compliqué (pour moi) est de trouver la bonne syntaxe en PB avec par exemple la correspondance :
pour IncellDropdown ,
ou même .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
    xlBetween, Formula1:="=$A$2:$A$4"

A part tâtonner, pour l'instant je n'ai pas trouver d'autres techniques plus rapide (et plus professionnel).

Hors ligne

 

#5 20-10-2009 12:18:38

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: [RESOLU] Définition et utilisation d'une Dropdown avec ole Excel via PB.

cela dit les dropdowns en Excel sont limités à 8 items, donc ça ne sera pas forcément utile pour toi...


N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#6 20-10-2009 12:25:36

wazou1812  
Modératrice
Award: bf
Date d'inscription: 24-05-2006
Messages: 610
Pépites: 2,097
Banque: 3,536,631,712,504

Re: [RESOLU] Définition et utilisation d'une Dropdown avec ole Excel via PB.

erasorz a écrit:

cela dit les dropdowns en Excel sont limités à 8 items, donc ça ne sera pas forcément utile pour toi...

bonjour,

Si, je veux reproduire en PB un exemple de fichier donné par un utilisateur.

Le besoin est bien clairement défini, il faut juste que j'arrive à convertir la macro Excel en code PB via l'OLE.

Hors ligne

 

#7 20-10-2009 14:37:58

FMolinas  
Membre Geek
Lieu: Lyon
Date d'inscription: 12-06-2007
Messages: 87
Pépites: 97
Banque: 6,435,474,948,567

Re: [RESOLU] Définition et utilisation d'une Dropdown avec ole Excel via PB.

wazou1812 a écrit:

Oui, mais après le plus compliqué (pour moi) est de trouver la bonne syntaxe en PB avec par exemple la correspondance :
pour IncellDropdown ,
ou même .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
    xlBetween, Formula1:="=$A$2:$A$4"

Il te faut instancier un objet OLE adéquat (genre Excel.Application) puis d'invoquer les méthodes par leur nom. Tu peux t'inspirer de l'aide PB, en particulier les exemples associés aux fonctions de OLEObject. Attention, les appels sont dynamiques, aucun contrôle ne peut être fait à la compilation. Teste plutôt trois fois qu'une le code résultant...
PB ne permet pas de nommer les paramètres quand il invoque une méthode. Tu devras donc envoyer, dans l'ordre, tous les paramètres au moins jusqu'au dernier que utilises.
Quant aux constantes, elles sont visibles (tout comme les méthodes avec leur ribambelle de paramètres) dans le Visual Basic Editor. Il te suffit de repérer une énumération, d'en sélectionner le membre qui t'intéresse, et de regarder en bas de la fenêtre la valeur associée.

Bon courage !

Hors ligne

 

#8 05-11-2009 10:04:29

wazou1812  
Modératrice
Award: bf
Date d'inscription: 24-05-2006
Messages: 610
Pépites: 2,097
Banque: 3,536,631,712,504

Re: [RESOLU] Définition et utilisation d'une Dropdown avec ole Excel via PB.

Bonjour,


N'ayant pas réussi a retranscrire la dropdown de Excel dans Powerbuilder, j'ai finalement fait un "modèle" dans Excel avec la constitution des dropdown dans Excel.

Ensuite, j'importe le modèle avec Pb et j'alimente simplement les données dans les dropdown. Et comme j'ai un peu de chance, le format des cellules est conservé.

Merci à tous,

Hors ligne

 

#9 20-03-2012 16:49:02

chefours  
Nouveau membre
Date d'inscription: 20-03-2012
Messages: 1
Pépites: 3
Banque: 0

Re: [RESOLU] Définition et utilisation d'une Dropdown avec ole Excel via PB.

Salut, c'est trop tard mais pour ceux qui en auront besoin, ce code permet d'ajouter une listbox :

Par exemple une liste Yes/No :
il faut que les valeurs soient séparées par un ;

ls_val = 'Yes;No'

                lxlSub.Cells(ll_ligne,i - li_nb_masquer + 1).Validation.Delete()
                lxlSub.Cells(ll_ligne,i - li_nb_masquer + 1).Validation.Add(3,1,1,ls_val)
                lxlSub.Cells(ll_ligne,i - li_nb_masquer + 1).Validation.IgnoreBlank = True
                lxlSub.Cells(ll_ligne,i - li_nb_masquer + 1).Validation.InCellDropdown = True
                lxlSub.Cells(ll_ligne,i - li_nb_masquer + 1).Validation.InputTitle = ""
                lxlSub.Cells(ll_ligne,i - li_nb_masquer + 1).Validation.ErrorTitle = "Choice"
                lxlSub.Cells(ll_ligne,i - li_nb_masquer + 1).Validation.InputMessage = "Choice " + ls_val
                lxlSub.Cells(ll_ligne,i - li_nb_masquer + 1).Validation.ErrorMessage = "Choice " + ls_val
                lxlSub.Cells(ll_ligne,i - li_nb_masquer + 1).Validation.ShowInput = True
                lxlSub.Cells(ll_ligne,i - li_nb_masquer + 1).Validation.ShowError = True

Hors ligne

 

#10 20-03-2012 18:31:46

JCZ  
Builder Power
Award: bf
Lieu: 75019 paris
Date d'inscription: 21-05-2007
Messages: 1724
Pépites: 496,453,703,213
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Définition et utilisation d'une Dropdown avec ole Excel via PB.


Face à l'agression, la puissance de l'intelligence

Hors ligne

 

#11 20-03-2012 18:37:17

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: [RESOLU] Définition et utilisation d'une Dropdown avec ole Excel via PB.

chefours a écrit:

Salut, c'est trop tard mais pour ceux qui en auront besoin, ce code permet d'ajouter une listbox :

Par exemple une liste Yes/No :
il faut que les valeurs soient séparées par un ;

ls_val = 'Yes;No'

                lxlSub.Cells(ll_ligne,i - li_nb_masquer + 1).Validation.Delete()
                lxlSub.Cells(ll_ligne,i - li_nb_masquer + 1).Validation.Add(3,1,1,ls_val)
                lxlSub.Cells(ll_ligne,i - li_nb_masquer + 1).Validation.IgnoreBlank = True
                lxlSub.Cells(ll_ligne,i - li_nb_masquer + 1).Validation.InCellDropdown = True
                lxlSub.Cells(ll_ligne,i - li_nb_masquer + 1).Validation.InputTitle = ""
                lxlSub.Cells(ll_ligne,i - li_nb_masquer + 1).Validation.ErrorTitle = "Choice"
                lxlSub.Cells(ll_ligne,i - li_nb_masquer + 1).Validation.InputMessage = "Choice " + ls_val
                lxlSub.Cells(ll_ligne,i - li_nb_masquer + 1).Validation.ErrorMessage = "Choice " + ls_val
                lxlSub.Cells(ll_ligne,i - li_nb_masquer + 1).Validation.ShowInput = True
                lxlSub.Cells(ll_ligne,i - li_nb_masquer + 1).Validation.ShowError = True

de ta contribution

histoire de prendre les bonnes habitudes


N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#12 22-03-2012 09:53:06

wazou1812  
Modératrice
Award: bf
Date d'inscription: 24-05-2006
Messages: 610
Pépites: 2,097
Banque: 3,536,631,712,504

Re: [RESOLU] Définition et utilisation d'une Dropdown avec ole Excel via PB.

Merci, ça pourra toujours servir dans un autre dev

Hors ligne

 
  • Index
  •  » Powerscripts
  •  » [RESOLU] Définition et utilisation d'une Dropdown avec ole Excel via PB.

Pied de page des forums

Propulsé par FluxBB 1.2.22