Pro de VBA à l'aide !

  • Initiateur de la discussion Initiateur de la discussion xsiong
  • 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 !

xsiong

XLDnaute Nouveau
Bonjour à tous et à toutes. Je sollicite votre aide et espère que vous pourriez m'apporter des réponses.

Le travail que j'ai à faire est dans un cadre professionnel étant en stage. Je travaille donc sur des fichiers Excels. Je vous expose la structure de mes feuilles (je vous fournirait un exemple en pièce jointe pour que cela vous soit plus facilement compréhensible) :
- chaque feuille dispose de plusieurs adresses URL ou chaque adresse URL dispose de sa propre ligne. Du coup il y autant d'adresses URL que de lignes (colonne B)
- chaque adresse URL dispose d'un n° (colonne A) : le Pagerank pour les connaisseurs

J'effectue un filtre automatique, puis un tri croissant sur la colonne A, donc sur les n°. A partir de là j'aurais donc voulu pouvoir :
- éviter les doublons : c'est-à-dire pouvoir mettre un fond de couleur à chaque cellule ou le nom de domaine est répété en sorte qu'il ne reste que le 1er :

http://annuaire.2ate.net/cuisine-k-12.html
http://annuaire.2ate.net/recette-s-172.html
http://annuaire.2ate.net/top-rank3.html

(je sais ici c'est le texte qui est colorié et non le fond de la cellule)

- pouvoir compter le nombre de cellules qui ont un fond de couleur

Enfin chose la plus essentiel à mes yeux :
- pouvoir comparer une URL d 'une feuille avec une autre URL d'une autre feuille pour lui mettre un fond de couleur si le nom de domaine est déjà présent.

Je sais pas si je suis claire dans mes propros, si ce n'est pas le cas dites le moi et j'essaierai d'être plus claire. J'ai d'autres problèmes encore mais ceux-là sont les principaux. Je sais que cela passe par le VBA mais étant novice en ce domaine, je fais appel à vous. Merci.
 

Pièces jointes

Re : Pro de VBA à l'aide !

Un peu chiant a faire, voici un début sur quoi tu peux commencer( si ca correspond)
j'ai supposer que les url commence tjs http:// et ait un /apres le nom
 

Pièces jointes

Dernière édition:
Re : Pro de VBA à l'aide !

Bonjour Xsiong, Sacapatates, le forum,

Voir exemple dans le fichier joint...

1. La macro Pagerank repere en couleur rouge les doublons sur le numero de Pagerank dans la meme feuille.
2. La macro URL repere les doublons d'URL sur tout le classeur et les mets en vert

Les pagerank doivent etre en colonne A et les URL en colonne B sur chaque page...

Bonne journee,🙂
 

Pièces jointes

Dernière édition:
Re : Pro de VBA à l'aide !

Je viens de voir et tester à l'instant vos propositions. Tout d'abord merci de vos réponses. En fait il y a quelques problèmes mais j'ai du mal expliqué désolé.

Pour Sacapatates : Oui c'est comme tu as dis pour la structure des URL. Pour te dire j'ai fait une formule que j'ai appliqué à une mise en forme conditionnelle et donc aussi un fond de couleur. Une formule qui est : =SI(GAUCHE($B2;CHERCHE("/";$B2;8))=GAUCHE($B1;CHERCHE("/";$B1;8)); VRAI; FAUX). Ça marche mais ça fait un peu bricolage et perte de temps un peu... Ce que tu m'as fait est niquel par contre j'ai pas l'impression que cela s'applique automatiquement sur toutes les feuilles à moins que j'ai mal testé. En fait j'ai fait une copie de la feuille "horoscope.fm", j'ai relancé le doc. Excel et il aurait donc du me souligner toutes les URL de cette nouvelle feuille, ce qui n'a pas été le cas. :/

- pour Pedrag31 j'ai fais le même test que pour Sacapatates et ça marche Nikel : tous les backlinks de la nouvelle feuille sont soulignés. Par contre ce que tu m'as fait avec le Pagerank c'est sympa mais en fait j'en ai pas besoin ^^'. Excuse j'ai mal m'expliquer.

Vu que vous êtes bon et que vous avez tout compris, j'aurai aimé que vous m'aidiez un peu plus si possible bien sur. Est-il possible de :

- Ecrire au niveau de la colonne C à côté des doublons surlignés " URL déjà présente dans la feuille "machin" (ou machin aurait pour nom le nom de la feuille bien sur). Donc en gros si il y a 2 URL avec pour même nom de domaine mais sur 2 feuilles, j'aimerai que sur la feuille 2, à côté de cette URL en colonne C soit écrit "URL déjà présente dans la feuille 1".

- En fait à la fin de mon étude (car je n'ai pas que 2 feuilles et si peu de URL) je dois faire un tableau résumé. Dans ce tableau j'aurais aimé compter le nombre d'URL que j'ai étudié sans compter bien sur les URL doublons mais aussi sans compter les URL ou le Pagerank est < à 3. Je ne veux pas un comptage sur tous le document. J'aimerai qu'il se fasse sur chaque feuille si possible.

Merci encore à vous pro de VBA.
 
Re : Pro de VBA à l'aide !

Re,

- Ecrire au niveau de la colonne C à côté des doublons surlignés " URL déjà présente dans la feuille "machin" (ou machin aurait pour nom le nom de la feuille bien sur). Donc en gros si il y a 2 URL avec pour même nom de domaine mais sur 2 feuilles, j'aimerai que sur la feuille 2, à côté de cette URL en colonne C soit écrit "URL déjà présente dans la feuille 1".

Je pense avoir compris l'idee... Voir dans le fichier joint. L'adresse de la premiere occurence est rappellee a cote de chaque doublon ensuite. A tester, re-tester.
Toutes les adresses doivent etre en colonnes B et les adresses d'occurences seront toujours en colonne C.

- En fait à la fin de mon étude (car je n'ai pas que 2 feuilles et si peu de URL) je dois faire un tableau résumé. Dans ce tableau j'aurais aimé compter le nombre d'URL que j'ai étudié sans compter bien sur les URL doublons mais aussi sans compter les URL ou le Pagerank est < à 3. Je ne veux pas un comptage sur tous le document. J'aimerai qu'il se fasse sur chaque feuille si possible.

Je vois pas vraiment, y'a bcp de possibilites... Peux tu donner un exemple de ce que tu souhaites obtenir dans un fichier joint?

++

Bonne journee,🙂
 

Pièces jointes

Re : Pro de VBA à l'aide !

Re-bonjour. Merci de cette réponse si rapide. J'ai testé ton fichier et ça marche du tonnerre ! C'est carrément ce que je souhaite !! T'es le meilleur ! (pour de vrai j'ai au minimum 300 lignes par feuilles, voire 1000 avec 8-9 feuilles ...) Du coup tu me sauves et facilite la vie !

Pour ce qui est de mon tableau résumé, je te mets en pièce jointe un doc Excel avec un petit tableau (situé en A21). J'ai remplit les données à la main et je pense que ça sera plus claire pour toi. De même que j'y ai mis une petite explication en colonne C. Merci vraiment à toi.
 

Pièces jointes

Re : Pro de VBA à l'aide !

Re,

J'ai cree une 3 eme macro pour le comptage des PageRank qui sont >= 3 et pour le comptage des doublons dont les Pagerank sont egalement >= 3...

Bien sur, il faut lancer cette 3eme macro apres avoir lance la macro de recherche des doublons d'URL 😉.

Je n'ai pas compris ce que compte le troisieme critere. Peux tu expliquer plus precisement et donner plusieurs exemples (avec des couleurs et des commentaires comme tu l'as deja fait dans ton dernier post)?

++ 😉
 

Pièces jointes

Re : Pro de VBA à l'aide !

Merci Pedrag, t'es vraiment un boss. Ça marche Nikel, en fait le 3ème critère c'est juste une soustraction du 1er critère sur le 2ème critère lol. Je me suis compliqué dans l'explication. Je pense que ça je peux le faire ! Je reviens à toi si j'ai d'autres choses à faire. Merci encore ! Trop fort !
 
Re : Pro de VBA à l'aide !

Bonjour Xsiong, le forum,

Il y avait une erreur sur la recherche de doublons des URL... La recherche precedente comparait sur l'ensemble de l'URL et non sur le nom de domaine uniquement.

Erreur corrigee, la recherche se fait dorenavant sur le nom de domaine uniquement! Voir fichier.

Bonne journee,🙂
 

Pièces jointes

Re : Pro de VBA à l'aide !

Salut Pedrag, t'es un chef ! En effet oui tu as raison ^^' : je viens de tester la version d'avant et ça ne compare que les URL identiques. Maintenant ça marche du tonnerre ! Je viens de copier et rajouter une url en rajoutant des caractères à la fin de l'adresse et elle se met bien en surbrillance. Trop cool =). Merci à toi.

Sinon j'aurai une tout dernière requête à te demander ... désolé je peux pas m'en empêcher car tu t'y connais bien. En fait tous les mois je créer un fichier de ce type, chaque fichier a la même structure, TOUT est identique, bien sur seul change les adresses URL bien évidemment. Le truc c'est que j'aurais aimé savoir si c'est possible de dire, si je travaille sur le fichier de septembre, que tel URL (donc en fonction du nom de domaine) est déjà présente dans le fichier du mois d'août par exemple et dans telle feuille et à telle ligne comme tu l'as fais ?
 
Re : Pro de VBA à l'aide !

Excuse moi mais j'ai un souci avec ton code, c'est bizarre d'ailleurs. En fait cela marche très bien parfois et dès fois cela ne marche pas, je comprends pas. Sur d'autres fichiers cela passe nikel et sur d'autres la recherche de doublons ne s'applique que sur 1 feuille, trop bizarre. Si tu pouvais m'aider là, j'ai du louper un étape :/. J'ai des petites notions en VBA et j'ai bien fais attention à appeler la fonction et tout mais je capte pas là ...
 
Re : Pro de VBA à l'aide !

Re,

En effet je comprends pkoi tu souhaitais faire une macro, ca fait qqch comme 5500 URL 😱 a traiter quand meme... Beau fichier!

Impeccable ton fichier joint en exemple, j'ai pu resoudre le probleme en 30 secondes. Si tous les XLDnautes pouvaient prendre exemple sur toi...🙄

Avant de lancer ta comparaison d'URL, il faut que tu supprimes les cellules ou les lignes avec les resultats de comptage des URL. J'ai teste sur ton fichier ca fonctionne tres bien jusqu'a la derniere apres suppression de ces lignes:

Code:
PageRank >= 3 :                     285
Doublons avec PageRank >= 3 :       123

En effet, la macro parcours TOUTE la colonne B jusqu'a la derniere cellule et si cette cellule n'est pas de format URL >>>> ERREUR!!!
Donc la macro plante et s'arrete lors qu'elle rencontre les "comptages"...🙁

Comme tu peux voir dans le nouveau fichier joint, je t'ai mis des commentaires detailles dans la macro pour que tu puisses ameliorer ton VBA... Tu verras que la gestion d'erreur est desactivee (d'ou pas de message d'erreur juste la macro qui stoppe quand on laisse les "comptages") et egalement que l'erreur de la cellule qui n'est pas une URL n'est pas geree par notre macro d'ou le pb...

Si tu as des questions, n'hesites pas...

Bonne journee,🙂
 

Pièces jointes

Dernière édition:
- 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
15
Affichages
519
Réponses
4
Affichages
146
Retour