Le code ci-dessous sert à gérer le Autre (préciser) d'une combo.
Il prompte pour demander la précision, ajoute la précision à la liste sur
laquelle est basée le combo, et devrait affecter la nouvelle entrée au combo.
Cette dernière étape ne fonctionne pas,
or si je la teste seule [sub toto() ci-dessous] ça marche.
Une idée ?
Merci
-------------- code ---------
Private Sub cmbSelectService_Change()
DerLigne = Sheets("AutresSources").Range("Liste_Service").Rows.Count
If cmbSelectService.Value = "Autre…" Then
valeurNouvelle = InputBox("Autre... précisez...")
Sheets("AutresSources").Range("Liste_Service").Cells(DerLigne, 1).Value =
valeurNouvelle
cmbSelectService.Value = valeurNouvelle
End If
End Sub
Sub toto()
valeurNouvelle = "Achats / Services Généraux"
cmbSelectService.Value = valeurNouvelle
End Sub
-----------------------------------
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Daniel
C'est pour ça que je t'avais demandé ton classeur. Avec un control, tu peux définir des propriétés sans passer par VBA. Par exemple, comment entres-tu les données de ton combobox ? Est-ce que tu utilises un plage dynamique ? Comme ça, je dirais que tu écrases la dernière donnée; tu devrais peut-être écrire : DerLigne = Sheets("AutresSources").Range("Liste_Service").Rows.Count + 1 ou : Sheets("AutresSources").Range("Liste_Service").Cells(DerLigne + 1, 1).Value = valeurNouvelle Daniel "philippe" a écrit dans le message de news:
Bonjour,
Le code ci-dessous sert à gérer le Autre (préciser) d'une combo. Il prompte pour demander la précision, ajoute la précision à la liste sur laquelle est basée le combo, et devrait affecter la nouvelle entrée au combo.
Cette dernière étape ne fonctionne pas, or si je la teste seule [sub toto() ci-dessous] ça marche.
Une idée ? Merci -------------- code --------- Private Sub cmbSelectService_Change() DerLigne = Sheets("AutresSources").Range("Liste_Service").Rows.Count If cmbSelectService.Value = "Autre." Then valeurNouvelle = InputBox("Autre... précisez...") Sheets("AutresSources").Range("Liste_Service").Cells(DerLigne, 1).Value > valeurNouvelle cmbSelectService.Value = valeurNouvelle End If End Sub
Sub toto() valeurNouvelle = "Achats / Services Généraux" cmbSelectService.Value = valeurNouvelle End Sub -----------------------------------
C'est pour ça que je t'avais demandé ton classeur. Avec un control, tu peux
définir des propriétés sans passer par VBA.
Par exemple, comment entres-tu les données de ton combobox ? Est-ce que tu
utilises un plage dynamique ? Comme ça, je dirais que tu écrases la dernière
donnée; tu devrais peut-être écrire :
DerLigne = Sheets("AutresSources").Range("Liste_Service").Rows.Count + 1
ou :
Sheets("AutresSources").Range("Liste_Service").Cells(DerLigne + 1, 1).Value
= valeurNouvelle
Daniel
"philippe" <philippe@discussions.microsoft.com> a écrit dans le message de
news: 687B75CB-955D-41D6-A4CA-26EB97AABDDA@microsoft.com...
Bonjour,
Le code ci-dessous sert à gérer le Autre (préciser) d'une combo.
Il prompte pour demander la précision, ajoute la précision à la liste sur
laquelle est basée le combo, et devrait affecter la nouvelle entrée au
combo.
Cette dernière étape ne fonctionne pas,
or si je la teste seule [sub toto() ci-dessous] ça marche.
Une idée ?
Merci
-------------- code ---------
Private Sub cmbSelectService_Change()
DerLigne = Sheets("AutresSources").Range("Liste_Service").Rows.Count
If cmbSelectService.Value = "Autre." Then
valeurNouvelle = InputBox("Autre... précisez...")
Sheets("AutresSources").Range("Liste_Service").Cells(DerLigne, 1).Value > valeurNouvelle
cmbSelectService.Value = valeurNouvelle
End If
End Sub
Sub toto()
valeurNouvelle = "Achats / Services Généraux"
cmbSelectService.Value = valeurNouvelle
End Sub
-----------------------------------
C'est pour ça que je t'avais demandé ton classeur. Avec un control, tu peux définir des propriétés sans passer par VBA. Par exemple, comment entres-tu les données de ton combobox ? Est-ce que tu utilises un plage dynamique ? Comme ça, je dirais que tu écrases la dernière donnée; tu devrais peut-être écrire : DerLigne = Sheets("AutresSources").Range("Liste_Service").Rows.Count + 1 ou : Sheets("AutresSources").Range("Liste_Service").Cells(DerLigne + 1, 1).Value = valeurNouvelle Daniel "philippe" a écrit dans le message de news:
Bonjour,
Le code ci-dessous sert à gérer le Autre (préciser) d'une combo. Il prompte pour demander la précision, ajoute la précision à la liste sur laquelle est basée le combo, et devrait affecter la nouvelle entrée au combo.
Cette dernière étape ne fonctionne pas, or si je la teste seule [sub toto() ci-dessous] ça marche.
Une idée ? Merci -------------- code --------- Private Sub cmbSelectService_Change() DerLigne = Sheets("AutresSources").Range("Liste_Service").Rows.Count If cmbSelectService.Value = "Autre." Then valeurNouvelle = InputBox("Autre... précisez...") Sheets("AutresSources").Range("Liste_Service").Cells(DerLigne, 1).Value > valeurNouvelle cmbSelectService.Value = valeurNouvelle End If End Sub
Sub toto() valeurNouvelle = "Achats / Services Généraux" cmbSelectService.Value = valeurNouvelle End Sub -----------------------------------