Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1350 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Combobox et fonctions (retourner une valeur ?)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Combobox et fonctions (retourner une valeur ?)

n°997003
kisscool31
Posté le 01-03-2005 à 12:46:48  profilanswer
 

Bonjour, j'aurais besoin d'un renseignement à propos des combobox et des fonctions qui les lancent.
En fait j'ai un programme principal qui fait appel a une fonction
pour la lancer j'écris :
vOption = FonctionErreur
je voudrais retourner la chaine de caractère que je veux récup dans FonctionErreur et la mettre dans vOption.
ma fonction se compose comme suit :
Function FonctionErreur
load Erreur
Erreur.CmbOption.AddItem "ISI"
Erreur.CmbOption.AddItem "IGI"
Erreur.show
 
et c'est la que j'ai un problème, je veux récup la valeur qui sera validée dans la combobox, je ne sais pas comment terminer ma fonction pour pouvoir retourner la chaine de caractère.
 
Si vous pouviez m'aider ça serait super car je galère.
Merci d'avance.

mood
Publicité
Posté le 01-03-2005 à 12:46:48  profilanswer
 

n°997266
kisscool31
Posté le 01-03-2005 à 15:48:59  profilanswer
 

Je viens d'essayer de mettre dans le code directement au lieu de mettre en fonction mais je n'arrive toujours a rien...
Je mets le code au cas ou quelqu'un y arriverait a m'aider.
 

Citation :

Sub creationLignes()
 
Selection.MoveUp unit:=wdScreen, Count:=2
Selection.MoveDown unit:=wdLine, Count:=13
Selection.MoveDown unit:=wdLine, Count:=100, Extend:=wdExtend
 
Selection.Delete unit:=wdCharacter, Count:=1
 
On Error GoTo GestionErreur
Dim FichierWord As Variant
 
'Document à ouvrir
Dim chemin As String
chemin = ThisDocument.Path & "\..\ConstitutionGroupesEtAffectationSujets.doc"
 
'Création de l'objet Word
Set FichierWord = CreateObject("word.application" )
 
FichierWord.Documents.Open FileName:=chemin, ReadOnly:=False
 
Dim j As Integer
For i = 1 To 30
j = 1
 
Do While (j <= 5)
    'boucle vérifiant si il y a au moins un étudiant pour le groupe i
    If (FichierWord.ActiveDocument.FormFields("Etu" & j & "_" & i).Result <> "" ) Then
    j = 6
        'vérifier que le champs option est remplie
        If (FichierWord.ActiveDocument.FormFields("Option_" & i).Result <> "" ) Then
            'vérifier que le champs contient ISI ou IGI
            If UCase(FichierWord.ActiveDocument.FormFields("Option_" & i).Result) = "IGI" Or UCase(FichierWord.ActiveDocument.FormFields("Option_" & i).Result) = "ISI" Then
            Selection.TypeText Text:=("Groupe " & i)
                If i < 10 Then
                    Selection.TypeText Text:=("                                      " )
                    Else
                    Selection.TypeText Text:=("                                    " )
                End If
                     
                    Selection.FormFields.Add Range:=Selection.Range, Type:= _
                    wdFieldFormTextInput
                    Selection.MoveLeft unit:=wdWord, Count:=1, Extend:=wdExtend
                    With Selection.FormFields(1)
                        .Name = ("RespGestProjTD" & i)
                        .EntryMacro = ""
                        .ExitMacro = ""
                        .Enabled = True
                        .OwnHelp = False
                        .HelpText = ""
                        .OwnStatus = False
                        .StatusText = ""
                        With .TextInput
                            .EditType Type:=wdRegularText, Default:="", Format:=""
                            .Width = 0
                        End With
                    End With
                    Selection.MoveRight unit:=wdCharacter, Count:=10
                    Selection.TypeParagraph
                    Selection.TypeParagraph
               
                    'si champs contient une mauvaise information (string autre que ISI ou IGI)
                    Else
                    'charge la fenêtre qui avertie de l'erreur et propose une correction
                    Load Erreur
                    Erreur.CmbOption.AddItem "IGI"
                    Erreur.CmbOption.AddItem "ISI"
                    Erreur.Show
                    vOption = Erreur.CmbOption.Value
                    MsgBox (vOption)

                     
                    Selection.TypeText Text:=("Groupe " & i)
                    If i < 10 Then
                        Selection.TypeText Text:=("                                      " )
                        Else
                        Selection.TypeText Text:=("                                    " )
                    End If
                     
                    Selection.FormFields.Add Range:=Selection.Range, Type:= _
                    wdFieldFormTextInput
                    Selection.MoveLeft unit:=wdWord, Count:=1, Extend:=wdExtend
                    With Selection.FormFields(1)
                        .Name = ("RespGestProjTD" & i)
                        .EntryMacro = ""
                        .ExitMacro = ""
                        .Enabled = True
                        .OwnHelp = False
                        .HelpText = ""
                        .OwnStatus = False
                        .StatusText = ""
                        With .TextInput
                            .EditType Type:=wdRegularText, Default:="", Format:=""
                            .Width = 0
                        End With
                    End With
                    Selection.MoveRight unit:=wdCharacter, Count:=10
                    Selection.TypeParagraph
                    Selection.TypeParagraph
                     
                    'modifier le fichier "constitution groupe"
                    FichierWord.ActiveDocument.FormFields("Option_" & i).Result = vOption
            End If 'fin de vérif ISI et IGI
       
       Else
       'charge la fenêtre qui avertie de l'erreur et propose une correction
       Load Erreur
       Erreur.CmbOption.AddItem "IGI"
       Erreur.CmbOption.AddItem "ISI"
       Erreur.Show
       a = Erreur.CmbOption.Text
       MsgBox (a)
                     
       Selection.TypeText Text:=("Groupe " & i)
            If i < 10 Then
                Selection.TypeText Text:=("                                      " )
                Else
                Selection.TypeText Text:=("                                    " )
            End If
                     
            Selection.FormFields.Add Range:=Selection.Range, Type:= _
            wdFieldFormTextInput
            Selection.MoveLeft unit:=wdWord, Count:=1, Extend:=wdExtend
            With Selection.FormFields(1)
                .Name = ("RespGestProjTD" & i)
                .EntryMacro = ""
                .ExitMacro = ""
                .Enabled = True
                .OwnHelp = False
                .HelpText = ""
                .OwnStatus = False
                .StatusText = ""
                With .TextInput
                    .EditType Type:=wdRegularText, Default:="", Format:=""
                    .Width = 0
                End With
            End With
            Selection.MoveRight unit:=wdCharacter, Count:=10
            Selection.TypeParagraph
            Selection.TypeParagraph
         
        'modifier le fichier "constitution groupe"
        FichierWord.ActiveDocument.FormFields("Option_" & i).Result = vOption
        End If 'fin option remplie
       
       Else
       j = j + 1
       End If 'fin boucle
       Loop
    Next
    GoTo fin
GestionErreur:
fin:
                       
    'Fermeture du document
    'ActiveDocument.Protect Password:="", Noreset:=True, Type:=wdAllowOnlyFormFields
    ThisDocument.Save
    FichierWord.Quit
End Sub


 
Erreur étant le UserForm ou j'ai mis la combobox CmbOption
 
Merci d'avance.

n°997514
knakes
Posté le 01-03-2005 à 20:51:24  profilanswer
 

Remplace par vOption = Erreur.CmbOption.Text


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Combobox et fonctions (retourner une valeur ?)

 

Sujets relatifs
Incrementer la valeur d une propriete d une class ?explication des fonctions C comme sur www.php.net
Ne pas savoir mettre une autre valeur => comboboxrecuperer la valeur de ce site
VBA-Combobox, la réponse du comboboxgarder la valeur d'une variable[résolu]
Fonction qui retourne différent type de valeur.Fonctions incompatibles ???
comment lié 2 combobox une change et l'autre suit 
Plus de sujets relatifs à : Combobox et fonctions (retourner une valeur ?)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR