Vous utilisez un navigateur obsolète. Il se peut que ce site ou d'autres sites Web ne s'affichent pas correctement. Vous devez le mettre à jour ou utiliser un navigateur alternatif.
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 !
Abou Dinblan
Tu peux développer un peu plus ta question, stp?
Dans le corps de ton message bien sur et pas dans ton fichier joint
(ce qui oblige à le télécharger pour s'apercevoir si la question posée nous intéresse ou pas )
NB: personnellement, je préfère le boudin antillais
Voici une macro, pour retrouver ton besoin pour la première ligne :
VB:
Sub mlkn()
Dim t(9) As Boolean
For Each r In Range("a1:g1")
t(r Mod 10) = True
t(Int(r / 10)) = True
Next r
For i = 0 To 9
If t(i) = True Then
Range("m1").Offset(0, k) = i
k = k + 1
End If
Next i
End Sub
Sub principal()
For i = 0 To 1
Call mlkn(i)
Next i
End Sub
Sub mlkn(lig)
Dim t(9) As Boolean
For Each r In Range("a1:g1").Offset(lig, 0)
t(r Mod 10) = True
t(Int(r / 10)) = True
Next r
For i = 0 To 9
If t(i) = True Then
Range("m1").Offset(lig, k) = i
k = k + 1
End If
Next i
End Sub
Avec quelques modifs sur la subroutine mlkn, pour :
- prendre en compte les cellules vides
- les nombres inférieurs à 10
VB:
Sub mlkn(lig)
Dim t(9) As Boolean
For Each r In Range("a1:g1").Offset(lig, 0)
If IsEmpty(r) = False Then
t(r Mod 10) = True
If Int(r / 10) <> 0 Then t(Int(r / 10)) = True
End If
Next r
For i = 0 To 9
If t(i) = True Then
Range("m1").Offset(lig, k) = i
k = k + 1
End If
Next i
End Sub
- 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