Boucle VBA [Résolu]

Signaler
Messages postés
9
Date d'inscription
mercredi 10 juillet 2019
Statut
Membre
Dernière intervention
10 juillet 2019
-
Messages postés
9
Date d'inscription
mercredi 10 juillet 2019
Statut
Membre
Dernière intervention
10 juillet 2019
-
Bonjour Bonjour,

Je suis complètement nulle en VBA malgré de multiples formations.
J'arrive à savoir ce que je veux mais je n'arrive pas à le coder :
J'espère que mon explication sera assez claire :

Tant que :
Dans le classeur 'requete journaux macro', colonne B n'est pas vide
Copier la cellule d'à coté A
Aller dans le classeur 'requete générale'
Faire un controle F, et coller la valeur qu'on avait copier
Copier la cellule trouvé (qui sera dans la colonne A)
Retourner dans le classeur 'requete journaux macro'
Coller dans B
Fin de tant que.


D’après moi ça marche car j'ai réussi à créer cette macro par l'exemple mais je n'arrive pas à rajouter la boucle :'(

Ps : j'ai essayé avec une recherche V toute simple mais ça ne fonctionne pas car dans la case A du classeur requete générale, ce qui compose la cellule est plein d'espace, de virgule, et de texte inutile.

Merci D'avance.
Bonne journée

2 réponses

Messages postés
15238
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
29 juin 2020
1 306
Bonjour,

Vous devriez mettre vos classeur a dispo, car peut-être que ca marche, mais comprends rien…….

Site de partage: https://mon-partage.fr/
Messages postés
11443
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
2 juillet 2020
655 >
Messages postés
9
Date d'inscription
mercredi 10 juillet 2019
Statut
Membre
Dernière intervention
10 juillet 2019

pourquoi ne pas publier le fichier sans les données?
Messages postés
9
Date d'inscription
mercredi 10 juillet 2019
Statut
Membre
Dernière intervention
10 juillet 2019

Je vais essayé de faire un fichier simplifier. je l'envoie ! merci beaucoup
Messages postés
9
Date d'inscription
mercredi 10 juillet 2019
Statut
Membre
Dernière intervention
10 juillet 2019

https://mon-partage.fr/f/bhLMWHiN/

Voici le lien.

En gros je voudrais que dans la colonne B de l'onglet 'journaux' j'ai le titre de l'article (qui est dans l'onglet 'Articles').
Par ce que en fait dans l'onglet article colonne A j'ai toutes les informations qui sont dans une seule case, alors que j'aimerais que le journal (qui correspond à la dernière partie de la case) soit dans une case à coté. Je sais qu'il existe d'autre méthode et pas uniquement le VBA mais la rechercheV (avec Vrai) me donne pas les bons résultats, et je ne connais pas la formule qui me fait prendre que les derniers caractères de la cellules (sachant qu'il n'y a jamais le même nombre de caractère).
dites moi si je ne suis pas claire.

Merci d'avance
Messages postés
11443
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
2 juillet 2020
655 >
Messages postés
9
Date d'inscription
mercredi 10 juillet 2019
Statut
Membre
Dernière intervention
10 juillet 2019

je ne vois pas la macro dans le fichier.
Messages postés
9
Date d'inscription
mercredi 10 juillet 2019
Statut
Membre
Dernière intervention
10 juillet 2019

https://mon-partage.fr/f/JHarP9QX/

Voici avec la macro, c'est une macro par l'exemple vu que je sais pas faire de boucle.
Mais j'aimerais que ce que j'ai fait se répète jusqu'à qu'il n'y est plus de données dans A.

Merci
Messages postés
11443
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
2 juillet 2020
655
bonjour, quelles formations as-tu suivies?
je remarque que ta boucle ne s’arrête jamais: est-ce bien ce que tu souhaites?
Messages postés
9
Date d'inscription
mercredi 10 juillet 2019
Statut
Membre
Dernière intervention
10 juillet 2019

Je vous remercie !!
Je ne sais juste pas comment programmer la partie centrale, à savoir le contrôle F suivit du copier coller dans la bonne cellule ?

Merci d'avance
Messages postés
11443
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
2 juillet 2020
655 >
Messages postés
9
Date d'inscription
mercredi 10 juillet 2019
Statut
Membre
Dernière intervention
10 juillet 2019

Sub jujumty()
Dim nlig As Long
Dim journaux As Worksheet, articles As Worksheet
Dim trouve As Range
nlig = 2
Set journaux = ThisWorkbook.Sheets("Journaux")
Set articles = ThisWorkbook.Sheets("Articles")
Do While journaux.Cells(nlig, 2) <> ""
    Set trouve = articles.Cells.Find(What:=journaux.Cells(nlig, 1), _
        LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _
        xlNext, MatchCase:=False, SearchFormat:=False)
    If Not trouve Is Nothing Then
        journaux.Cells(nlig, 2) = trouve
    End If
    nlig = nlig + 1
Loop
End Sub
Messages postés
9
Date d'inscription
mercredi 10 juillet 2019
Statut
Membre
Dernière intervention
10 juillet 2019

Merci beaucoup !!!! ça marche :D
Messages postés
11443
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
2 juillet 2020
655 >
Messages postés
9
Date d'inscription
mercredi 10 juillet 2019
Statut
Membre
Dernière intervention
10 juillet 2019

parfait, peux-tu alors marquer le sujet comme résolu, via la roue dentée à droite du titre?
Messages postés
9
Date d'inscription
mercredi 10 juillet 2019
Statut
Membre
Dernière intervention
10 juillet 2019

C'est bon ! Merci encore !