Automatiser une extraction de nom de domaine d'une adresse URL
Résolu
papachat
Messages postés
3
Statut
Membre
-
papachat -
papachat -
Bonjour,
Je souhaiterais pouvoir automatiser l'extraction de noms de domaines des adresses URL que j'ai copiées en colonne dans Excel.
L'un des problèmes auquel je suis confronté est que toutes ces adresses n'ont pas la même "forme" initiale.
J'ai essayé :
- les macros en VBA, mais je bloque sur la rédaction de la boucle "do...while" et le "rechercher / remplacer" s'avère être trop lourd;
- de "convertir" en remplaçant les "." par des espaces pour ventiler dans différentes colonnes, mais les différentes "formes initiales" posent problème ... idem avec les fonctions "gauche" ou "droite".
Exemples:
Adresse de départ => ce que je souhaite obtenir
www.bing.com => bing
go.microsoft.com => microsoft
static2.pagesjaunes.fr => pagesjaunes
www.taratatatsointsoin.com => taratatatsointsoin
taratatatsointsoin.com => taratatatsointsoin
J'en passe et des meilleures ...
Si quelqu'un pouvait me donner un coup de main ...
Merci par avance ! :)
Je souhaiterais pouvoir automatiser l'extraction de noms de domaines des adresses URL que j'ai copiées en colonne dans Excel.
L'un des problèmes auquel je suis confronté est que toutes ces adresses n'ont pas la même "forme" initiale.
J'ai essayé :
- les macros en VBA, mais je bloque sur la rédaction de la boucle "do...while" et le "rechercher / remplacer" s'avère être trop lourd;
- de "convertir" en remplaçant les "." par des espaces pour ventiler dans différentes colonnes, mais les différentes "formes initiales" posent problème ... idem avec les fonctions "gauche" ou "droite".
Exemples:
Adresse de départ => ce que je souhaite obtenir
www.bing.com => bing
go.microsoft.com => microsoft
static2.pagesjaunes.fr => pagesjaunes
www.taratatatsointsoin.com => taratatatsointsoin
taratatatsointsoin.com => taratatatsointsoin
J'en passe et des meilleures ...
Si quelqu'un pouvait me donner un coup de main ...
Merci par avance ! :)
A voir également:
- Automatiser une extraction de nom de domaine d'une adresse URL
- Comment saisir une adresse url - Guide
- Créer une adresse hotmail - Guide
- Adresse mac - Guide
- Trouver un nom avec une adresse ✓ - Forum Réseaux sociaux
- Url masquée pour votre sécurité - Forum Programmation
2 réponses
Salut;
En supossant que le nom du domaine se situt entre deux points : (exemple: .Bing. & .Microsoft. ) et que cette forme est la plus utilisée, tu peux extraire le nom du domaine en utilisant la Fonction: CONVERTIR (Menu Données / Zone outils de donnés / convertir
pour le faire :
Sélectionner la plage de cellules contenant les URLs
cliquer sur convertir
et suivre l'assistant en choisissant le point (.) comme séparateur
Avant de sélectionner la plage, mettre à part les URLs de forme différents que celle qui délimite le nom entre les deux points, pour les traiter séparément.
Bon courage
En supossant que le nom du domaine se situt entre deux points : (exemple: .Bing. & .Microsoft. ) et que cette forme est la plus utilisée, tu peux extraire le nom du domaine en utilisant la Fonction: CONVERTIR (Menu Données / Zone outils de donnés / convertir
pour le faire :
Sélectionner la plage de cellules contenant les URLs
cliquer sur convertir
et suivre l'assistant en choisissant le point (.) comme séparateur
Avant de sélectionner la plage, mettre à part les URLs de forme différents que celle qui délimite le nom entre les deux points, pour les traiter séparément.
Bon courage
Bonsoir,
une petite fonction personnalisée qui traite les cas que tu as cité :
Mais comme tu as gardé le meilleur... ;-)
https://www.cjoint.com/?CBmv1Ckcl4b
eric
une petite fonction personnalisée qui traite les cas que tu as cité :
Function nomDomaine(adr As String) As String
Dim part As Variant
part = Split(adr, ".")
Select Case UBound(part)
Case 0, 1
nomDomaine = part(0)
Case 2
nomDomaine = part(1)
End Select
End Function
Mais comme tu as gardé le meilleur... ;-)
https://www.cjoint.com/?CBmv1Ckcl4b
eric
Bonjour eriiic,
Désolé pour le retour tardif, je n'étais pas dispo ces derniers jours ...
Au risque de paraître ridicule, je n'arrive pas à intégrer ta proposition de fonction dans ma macro ...
si j'ai bien compris :
1-on nomme la zone de "nomDomaine";
2-ensuite je m'enregistre une macro quelconque sur le sujet et je remplace les commandes par celles que tu m'as proposé (je sais, c'est un peu de la bidouille ... :)).
Par contre, la fonction s'insère après :
Sub Macro1
'
et se termine avant :
'
End Sub ?
Merci pour ton aide :)
A+
Désolé pour le retour tardif, je n'étais pas dispo ces derniers jours ...
Au risque de paraître ridicule, je n'arrive pas à intégrer ta proposition de fonction dans ma macro ...
si j'ai bien compris :
1-on nomme la zone de "nomDomaine";
2-ensuite je m'enregistre une macro quelconque sur le sujet et je remplace les commandes par celles que tu m'as proposé (je sais, c'est un peu de la bidouille ... :)).
Par contre, la fonction s'insère après :
Sub Macro1
'
et se termine avant :
'
End Sub ?
Merci pour ton aide :)
A+
Bonjour,
non, pas vraiment.
Pas besoin de Sub... End Sub puisqu'une fonction se déclare entre Function et End Function.
Tu copie-colles le code fourni, c'est tout.
Ensuite sur la feuille ça s'utilise comme une fonction d'excel.
Dans une cellule tu écris =nomDomaine(ta_cellule_URL)
Tu peux aussi faire 'insertion / fonction' et la choisir dans la catégorie 'fonctions personnalisées'.
eric
non, pas vraiment.
Pas besoin de Sub... End Sub puisqu'une fonction se déclare entre Function et End Function.
Tu copie-colles le code fourni, c'est tout.
Ensuite sur la feuille ça s'utilise comme une fonction d'excel.
Dans une cellule tu écris =nomDomaine(ta_cellule_URL)
Tu peux aussi faire 'insertion / fonction' et la choisir dans la catégorie 'fonctions personnalisées'.
eric
Je mets en application de ce pas :)