Macro Excel
malabarbe
Messages postés
136
Statut
Membre
-
eriiic Messages postés 25847 Date d'inscription Statut Contributeur Dernière intervention -
eriiic Messages postés 25847 Date d'inscription Statut Contributeur Dernière intervention -
Par Macro, décortiquer chiffres ou nombres séparés par une virgule
Bonsoir à tous,
Je m'explique,
Je saisis par une InputBox :
16,4,1
Je voudrais pouvoir obtenir les différentes conbinaisons de ces 3 éléments :
a = 16,4,1
b = 16,1,4
c = 4,16,1
d = 4,1,16
e = 1,16,4
f = 1,4,16
Je galère un max !
Avez-vous une idée simple ?
A vous lire
Bonsoir à tous,
Je m'explique,
Je saisis par une InputBox :
16,4,1
Je voudrais pouvoir obtenir les différentes conbinaisons de ces 3 éléments :
a = 16,4,1
b = 16,1,4
c = 4,16,1
d = 4,1,16
e = 1,16,4
f = 1,4,16
Je galère un max !
Avez-vous une idée simple ?
A vous lire
A voir également:
- Macro Excel
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Si ou excel - Guide
- Déplacer colonne excel - Guide
2 réponses
Bonjour,
Oui !
D'abord sur ta saisie :
- ne tolérer à la saisie que des chiffres et des virgules
- et/ou vérifier qu'il y a 2 et seulement 2 virgules et des chiffres
Ensuite repérer les rangs v1 et v2 des virgules dans la chaîne de caractères, puis affecter les trois nombres à des variables a, b, c.
Enfin MsgBox (c1 = a & " " & b & " " & c & Chr(10) & ...)
A+
Oui !
D'abord sur ta saisie :
- ne tolérer à la saisie que des chiffres et des virgules
- et/ou vérifier qu'il y a 2 et seulement 2 virgules et des chiffres
Ensuite repérer les rangs v1 et v2 des virgules dans la chaîne de caractères, puis affecter les trois nombres à des variables a, b, c.
Enfin MsgBox (c1 = a & " " & b & " " & c & Chr(10) & ...)
A+
Bonjour,
pour décortiquer tu as split().
Ex (j'ai pris A1 au lieu d'un textbox) :
Pour le reste ça risque d'être un peu plus complexe.
Selon nombre maxi d'éléments saisis la solution peut varier.
Et où et comment tu veux les solutions ?
Faut-il supprimer les doublons ? A la saisie et diminuer le nombre d'éléments ou seulement dans les solutions ?
etc...
eric
pour décortiquer tu as split().
Ex (j'ai pris A1 au lieu d'un textbox) :
Sub test()
Dim listeNum As Variant, i As Long, ok As Boolean
listeNum = Split([A1], ",")
For i = 0 To UBound(listeNum)
ok = IsNumeric(listeNum(i))
If Not ok Then Exit For
Next i
If Not ok Then
MsgBox ("pas bon")
Else
'suite du traitement
End If
End Sub
Pour le reste ça risque d'être un peu plus complexe.
Selon nombre maxi d'éléments saisis la solution peut varier.
Et où et comment tu veux les solutions ?
Faut-il supprimer les doublons ? A la saisie et diminuer le nombre d'éléments ou seulement dans les solutions ?
etc...
eric