Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Fonction recherche Textfields

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

vmax67

XLDnaute Occasionnel
Bonjour les experts

J'ai besoin de votre aide a propos d'une fonction à intégrée dans une formule

Ci-dessous la fonction

Function HtToLicence(Onglet As Integer, Col As Integer, Row As Integer) As String

Dim Cellule As Object, Textfields As Object, tmp As String
Dim i As Integer

'Spécifie la cellule A1 dans la 1ere Feuille
Cellule = ThisComponent.Sheets(Onglet).GetCellByPosition(Col, Row)

Textfields = Cellule.Textfields

'Vérifie s'il y a des liens dans la cellule
If Textfields.Count = 0 Then
HtToLicence = "?"
Else
tmp = Textfields.getByIndex(0).URL
HtToLicence = Right(tmp, Len(tmp) - InStr(tmp, "="))
' & _
' Chr(10) & oTextFields.getByIndex( 0 ).Representation

End If

End Function

Ci-dessous la formule qui doit renvoyer une valeur d'un site internet

=HTTOLICENCE(0;CELLULE("col";B3)-1;CELLULE("ligne";B3)-1)

Merci

en pièce jointe le fichier excel

Merci
 

Pièces jointes

Re : Fonction recherche Textfields

Salut,

C'est difficile d'uiliser une fonction openoffice en vba excel.

je crois que tu veux récupérer le lien hypertexte défini dans autre feuille

en adaptant comme ceci on doit pas être loin de ce que tu veux:


Function HtToLicence(Onglet As Integer, Col As Integer, Row As Integer,optional Res$="?") As String

on error resume next
httolicence=sheets(onglet).cells(row,col).hyperlinks(1).address
if err<>0 then httolicence=res

end function


A+++
 
Re : Fonction recherche Textfields

Bonjour et merci pour ce code


j'ai une erreur sur cette ligne, une fenêtre box s'ouvre avec le message suivant

Erreur de compilation
Attendu: fin d'instruction


httolicence=sheets(onglet).cells(row,col).hyperlin ks(1).address

@+
 
Re : Fonction recherche Textfields

Re,

un espace en trop,

une précision quand on appelle la fonction depuis la cellule excel on peux remplacer le ? par autre chose...

comme ceci

Code:
Function HtToLicence(Onglet As Integer, Col As Integer, Row As Integer, Optional Res$ = "?") As String

On Error Resume Next
HtToLicence = Sheets(Onglet).Cells(Row, Col).Hyperlinks(1).Address
If Err <> 0 Then HtToLicence = Res

End Function


A+++
 
Re : Fonction recherche Textfields

Re,


Ton N° de licence c 128039 pour ANDRE Jacques ?

en adaptant la fonction comme ceci

Code:
Function HtToLicence(Onglet As Integer, Col As Integer, Row As Integer, Optional Res$ = "?", Optional Delim$ = "=") As String
  On Error Resume Next
  HtToLicence = ExtractDroite(Sheets(Onglet).Cells(Row, Col).Hyperlinks(1).Address, Delim)
  If Err <> 0 Then HtToLicence = Res
End Function

Function ExtractDroite(ByVal Ch$, ByVal Delim$)
  Dim I&
  For I = 1 To Len(Ch)
    If Mid(Ch, I, 1) = Delim Then ExtractDroite = Right(Ch, Len(Ch) - I): Exit For
  Next I
End Function


A+++
 
Re : Fonction recherche Textfields

Bonjour,

dans le 1 er fichier il y avait le numéro de licence dans le lien hypertexte, dans le 2 ème fichier il n'y parait plus .


Où est le bon ?

testes dans le 1 er cela fonctionne , si on a nulle part ce numéro de licence je ne peux pas le deviner.
ou il me faut plus de précisions...

A+++
 
- 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
4
Affichages
733
Réponses
3
Affichages
441
Réponses
2
Affichages
411
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…