Récupérer l'IP dans une cellule
Résolu
rama9300
Messages postés
6
Date d'inscription
Statut
Membre
Dernière intervention
-
rama9300 Messages postés 6 Date d'inscription Statut Membre Dernière intervention -
rama9300 Messages postés 6 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Est-ce possible de créer une macro qui récupére une valeur dans une cellule?
Exemple:
Host2 - 192.168.0.23 - Bat 2 - salle C24
Je souhaiterais récupérer uniquement la valeur " 192.168.0.23 "
J'ai trouvé la commande Sheets(1).Cells.Find("*.*.*.*", , , 1) pour repérer les cellules contenant des IP. Par contre, je ne parviens pas à récupérer uniquement l'IP...
Pouvez-vous m'aider svp?
Cordialement,
Est-ce possible de créer une macro qui récupére une valeur dans une cellule?
Exemple:
Host2 - 192.168.0.23 - Bat 2 - salle C24
Je souhaiterais récupérer uniquement la valeur " 192.168.0.23 "
J'ai trouvé la commande Sheets(1).Cells.Find("*.*.*.*", , , 1) pour repérer les cellules contenant des IP. Par contre, je ne parviens pas à récupérer uniquement l'IP...
Pouvez-vous m'aider svp?
Cordialement,
A voir également:
- Récupérer l'IP dans une cellule
- Ethernet n'a pas de configuration ip valide - Guide
- Recuperer message whatsapp supprimé - Guide
- Comment connaître son adresse ip - Guide
- Aller à la ligne dans une cellule excel - Guide
- Comment recuperer une video sur youtube - Guide
4 réponses
Si tu es sur de n'avoir qu'une IP par cellule, essaie la fonction personnalisée (issue du tutoriel de caféine) :
Ne pas oublier d'activer la référence Microsoft VBScript Regular Expressions dans Outils/références (sous l'éditeur VBA)
Pour son utilisation, dans la feuille :
- en A1 : Host2 - 192.168.0.23 - Bat 2 - salle C24
- en B1 : =IsoleIP(A1)
Ne pas oublier d'activer la référence Microsoft VBScript Regular Expressions dans Outils/références (sous l'éditeur VBA)
'nécessite l'activation de la référence : 'Microsoft VBScript Regular Expressions 'Outils/Références Function IsoleIP(monRange As Range) Dim Regle As New VBScript_RegExp_55.RegExp Dim EstBon As VBScript_RegExp_55.Match Dim maCollec As VBScript_RegExp_55.MatchCollection Regle.Pattern = "((25[0-5]|2[0-4]\d|1?\d?\d)\.){3}(25[0-5]|2[0-4]\d|1?\d?\d)" Set maCollec = Regle.Execute(monRange.Value) For Each EstBon In maCollec IsoleIP = EstBon.Value Next Set maCollec = Nothing Set Regle = Nothing End Function
Pour son utilisation, dans la feuille :
- en A1 : Host2 - 192.168.0.23 - Bat 2 - salle C24
- en B1 : =IsoleIP(A1)
Bonjour,
Si le "schéma" de vos données est toujours de la forme info1 "espace" "tiret" "espace" IP "espace" "tiret" "espace" info3 "espace" "tiret" "espace" etc...
L'adresse IP est :
Si le "schéma" de vos données est toujours de la forme info1 "espace" "tiret" "espace" IP "espace" "tiret" "espace" info3 "espace" "tiret" "espace" etc...
L'adresse IP est :
Split(ActiveCell.Value, " - ")(1)
Bonjour,
Merci pour la réponse.
Cependant, il n'y a pas de schéma respecté.
Les données sont souvent formulé de manière aléatoire.
L'IP est toujours présente dans la cellule mais il y a également d'autre information dans cette même cellule.
Cordialement,
Merci pour la réponse.
Cependant, il n'y a pas de schéma respecté.
Les données sont souvent formulé de manière aléatoire.
L'IP est toujours présente dans la cellule mais il y a également d'autre information dans cette même cellule.
Cordialement,
Je pensais utiliser la fonction IsolateIP de cette manière :
Sub For_Each_Next_Plage()
Dim FL1 As Worksheet, Cell As Range, Plage As Range
Dim Var1
Set FL1 = Worksheets("Feuil2")
With FL1
Set Plage = .Range("W47:W200")
For Each Cell In Plage
'Valeur de la cellule lue
Var1 = IsoleIP(Cell.Select)
Next
End With
Set FL1 = Nothing
Set Plage = Nothing
End Sub
L'idée était de parcourir la colonne W de la ligne 47 à 200 pour récupérer l'IP de la cellule.
Cependant, cela n'a pas l'air de fonctionner. Avez-vous une idée du blocage?
Cordialement,
Au lieu de : mettre :
Alors?
ça fonctionne?
Merci beaucoup! cela fonctionne! Je n'ai pas pu travailler dessus hier. Désolé pour la réponse tardive.
Cordialement,