XL 2016 Problème sur une macro

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 !

Solution
Bonjour tout le monde. 🙂
Et pour éviter le problème du Mid ( post #4 ) et en s'inspirant de Replace de Job, on arrive à :
VB:
        Ws.Cells(j, 4) = "'" & Ws.Cells(i + 3, 1) & "-" & Ws.Cells(i + 4, 1)
        Chaine = Ws.Cells(i + 5, 1) & "-" & Ws.Cells(i + 6, 1)
        Ws.Cells(j, 5) = "'" & Replace(Replace(Chaine, "(", ""), ")", "")
Bonjour robertduval,

Voyez le fichier joint et cette macro :
VB:
Sub RangeLesDonneesFlash()
Dim pas%, coldeb%, i&, lig&, col%, j&
pas = 7 'à adapter
coldeb = 2 'à adapter
With Feuil1.[A1].CurrentRegion
    For i = 1 To .Rows.Count Step pas
        lig = lig + 1
        col = coldeb
        For j = i + 1 To i + pas - 1
            .Cells(lig, col) = Replace(Replace(.Cells(j, 1), "(", ""), ")", "")
            col = col + 1
    Next j, i
    .Cells(lig + 1, coldeb).Resize(.Rows.Count - lig, pas - 1).ClearContents 'RAZ en dessous
End With
End Sub
Edit : salut M12.

A+
 

Pièces jointes

Dernière édition:
Bonjour Robertduval,
Difficile de voir d'où vient le problème puisqu'on n'a pas la structure précédente.
Une piste : Dans cette ligne Ws.Cells(j, 5) = VBA.Right(Ws.Cells(i + 4, 1), Len(Ws.Cells(i + 4, 1)) - 1) on fait référence à i+4, soit pour le premier à la chaine "1", or Len(Ws.Cells(i + 4, 1)) - 1 vaut donc 0.
J'ai donc remplacer ces deux lignes par :
Code:
        Ws.Cells(j, 4) = "'" & Ws.Cells(i + 3, 1) & "-" & Ws.Cells(i + 4, 1)
        Ws.Cells(j, 5) = "'" & Mid(Ws.Cells(i + 5, 1), 2, 1) & "-" & Mid(Ws.Cells(i + 6, 1), 2, 1)
et le code tourne.
A vérifier si c'est correct. En particulier je fait un Mid qui ne prend qu'un caractère, s'il y avait ligne 6 ou 7
"(12)" alors cela ne marcherait pas, je n'attend qu'un caractère. Sinon il faut reprendre cette ligne.
 

Pièces jointes

Bonjour Job,
La feuil2 semble montrer le résultat attendu.
Bonjour je récuperais des données en copier collé sur un site, mais maintenant les données sont disposé autrement j'ai ma macro qui ne fonctionne plus en feuil2 j'ai fait comment c'etais avant y a-t-il moyen de modifier la macro MERCI
PS: Désolé de n'avoir pas salué en arrivant, il y a de plus en plus de problème de refresh et de synchro sur XLD.🙁
 
Bonjour tout le monde. 🙂
Et pour éviter le problème du Mid ( post #4 ) et en s'inspirant de Replace de Job, on arrive à :
VB:
        Ws.Cells(j, 4) = "'" & Ws.Cells(i + 3, 1) & "-" & Ws.Cells(i + 4, 1)
        Chaine = Ws.Cells(i + 5, 1) & "-" & Ws.Cells(i + 6, 1)
        Ws.Cells(j, 5) = "'" & Replace(Replace(Chaine, "(", ""), ")", "")
 

Pièces jointes

Bonjour à tous M12, job75, sylvanu.
Merci à vous 3 de vous êtres penché sur mon problème sylvanu as trouvé ce que je voulais ça fonctionne j'ai juste rajouté les espaces entre les 2 chiffres du score et le -, par contre c'est quoi le Mid, pour juste comprendre en cas de plantage de la macro.
Merci encore à vous 3
 
- 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

Discussions similaires

Réponses
8
Affichages
102
Retour