• Initiateur de la discussion Initiateur de la discussion gib
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

G

gib

Guest
Bonjour le forum
et merci Hervé

ta macro est super

mais j'ai un problème car à la place d'une virgule j'ai 'puis' de manière aléatoire. J'ai oublié de te le mentionner!!

exemple: alain 23, bernard 44 puis roland 56, lucien 63

et avec ta macro pour l'exemple ci dessus j'ai:

B1=23
C1=4456
D1=63

au lieu de
B1=23
C1=44
D1=56
E1=63

et pour finir je souhaiterais appliquer cette macro sur 9 ensembles
situés en
A1
A2
A3
A4
A5
A6
A7
A8
A9

merci hervé si tu peux m'aider



salut gib
 
Bonsoir gib, le forum

Gib, faut rester dans le meme post, sinon, ca devient très compliqué pour suivre.

Je te comfirme aussi que tu avais oublié de me parler de ce petit détail de 'puis'.

une macro et une fonction VBA devrait résoudre ton souci :


Sub Bouton1_QuandClic()
Dim tablo As Variant
Dim tablo1 As Variant
Dim c As Range
Dim i As Byte, j As Byte
Dim colonne As Byte

For Each c In Range('a1:a' & Range('a65536').End(xlUp).Row)
colonne = 1
        tablo = Split(c, ',')
       
For i = 0 To UBound(tablo)
               
If InStr(1, tablo(i), 'puis') Then
                        tablo1 = Split(tablo(i), 'puis')
                       
For j = 0 To UBound(tablo1)
                                c.Offset(0, colonne) = numerique(tablo1(j))
                                colonne = colonne + 1
                       
Next j
               
Else
                        c.Offset(0, colonne) = numerique(tablo(i))
                        colonne = colonne + 1
               
End If
       
Next i
Next c
       
End Sub

Public Function numerique(ByVal temp As String) As Long
Dim i As Byte
       
For i = 1 To Len(temp)
               
If IsNumeric(Mid(temp, i, 1)) Then numerique = numerique & Mid(temp, i, 1)
       
Next i
End Function


salut
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
5
Affichages
869
M
Réponses
3
Affichages
1 K
msauvegrain
M
  • Question Question
Microsoft 365 Code VBA - Erreur
Réponses
1
Affichages
769
M
Réponses
2
Affichages
900
Mathilde04
M
P
Réponses
2
Affichages
1 K
pompier83
P
S
Réponses
8
Affichages
1 K
S
I
Réponses
15
Affichages
3 K
iledereve
I
L
Réponses
2
Affichages
17 K
lausoro
L
Retour