Problème de boucle imaginaire dans un SUB
Iguanal
Messages postés
2
Date d'inscription
Statut
Membre
Dernière intervention
-
lermite222 Messages postés 8724 Date d'inscription Statut Contributeur Dernière intervention -
lermite222 Messages postés 8724 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous,
J'ai ecrit une fonction pour excel qui me crée un Lien hypertexte et me remplis un tableau(dans une autre feuil) avec des adresses de lien.
La partie créationde lien hypertexte marche parfaitement.
Par contre ce qui me semblait le plus simple ( remplir un tableau )me pose problème depuis un petit moment.
Voici mon problème : en mode pas à pas
Si j'appel uniquement Sub CreationHyperlink tout se passe comme prévu
maintenant si j'appel Sub CreationHyperlink et CreationTableau avec ses paramètres
j'execute uniquement cette action : Worksheets("Feuil3").Cells(1, 1).Value = a
puis plus rien... Je ne retorune même pas par le END FUNCTION
Enfin si j execute Sub CreationHyperlink et CreationTableau sans ses paramètres
je tourne en boucle dans CreationTableau, encore une fois sans retourner par END FUNCTION
Voici mon code:
Public Sub CreationHyperlink(a As String)
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:=a
End Sub
_____________________________________________________________________
Private Sub CreationTableau() 'a As String, b As String, c As String)
Worksheets("Feuil3").Cells(1, 1).Value = a
Worksheets("Feuil3").Cells(1, 2).Value = b
Worksheets("Feuil3").Cells(1, 3).Value = c
End Sub
_____________________________________________________________________
Function AddLink(AddrInternet As String, AddrLocal As String, Name As String) As String
AddLink = Name
Call CreationHyperlink(AddrLocal)
'Call CreationTableau 'AddrInternet, AddrLocal, Name)
End Function
____________________________________________________________________
D
J'ai ecrit une fonction pour excel qui me crée un Lien hypertexte et me remplis un tableau(dans une autre feuil) avec des adresses de lien.
La partie créationde lien hypertexte marche parfaitement.
Par contre ce qui me semblait le plus simple ( remplir un tableau )me pose problème depuis un petit moment.
Voici mon problème : en mode pas à pas
Si j'appel uniquement Sub CreationHyperlink tout se passe comme prévu
maintenant si j'appel Sub CreationHyperlink et CreationTableau avec ses paramètres
j'execute uniquement cette action : Worksheets("Feuil3").Cells(1, 1).Value = a
puis plus rien... Je ne retorune même pas par le END FUNCTION
Enfin si j execute Sub CreationHyperlink et CreationTableau sans ses paramètres
je tourne en boucle dans CreationTableau, encore une fois sans retourner par END FUNCTION
Voici mon code:
Public Sub CreationHyperlink(a As String)
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:=a
End Sub
_____________________________________________________________________
Private Sub CreationTableau() 'a As String, b As String, c As String)
Worksheets("Feuil3").Cells(1, 1).Value = a
Worksheets("Feuil3").Cells(1, 2).Value = b
Worksheets("Feuil3").Cells(1, 3).Value = c
End Sub
_____________________________________________________________________
Function AddLink(AddrInternet As String, AddrLocal As String, Name As String) As String
AddLink = Name
Call CreationHyperlink(AddrLocal)
'Call CreationTableau 'AddrInternet, AddrLocal, Name)
End Function
____________________________________________________________________
D
A voir également:
- Problème de boucle imaginaire dans un SUB
- Move your sub - Télécharger - Sous-titres
- Nom de royaume imaginaire - Forum Loisirs / Divertissements
- Tv orange chargement en boucle ✓ - Forum TV & Vidéo
- Mise à disposition de boucle locale dédiée ✓ - Forum Freebox
- Xiaomi s'éteint tout seul et se rallume en boucle - Forum Xiaomi
3 réponses
Bonjour,
En premier : Tu envoi l'adresse de la cellule par un String mais le paramètre à besoin d'un Range
J'ai pas encore regarder la suite
A+
EDIT : Je comprend pas bien ce que tu veux faire ! explique un peu plus..
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
En premier : Tu envoi l'adresse de la cellule par un String mais le paramètre à besoin d'un Range
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:=Range(a)
J'ai pas encore regarder la suite
A+
EDIT : Je comprend pas bien ce que tu veux faire ! explique un peu plus..
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
Merci pour ta réponse lermite222. je sais que ma syntaxe en VB est un peu hasardeuse mais jene pense pas que mon problème soit la (ou du moin pas celui que je cherche ;) )
Tout en gardant ma methode de rédaction pitoyable j'ai reuci à résoudre mon problème en le contournant.
Au lieu d'appeler ma fonction devant remplir le tableau dans un module je l'appel depuis une feuil (je ne sais pas si mon explication est correcte...)
En utilisant : "DES VARIABLES GLOBALES"
Oui je sais pas bien .... Mais au moins ça marche !
Et pour répondre à ta question
Je dois faire une petite fonction servant à simplifier l'ajout d'une donnée (pour un troubleshooting)
Donc pour faire simple on rentre une fonction(perso) avec 3 parametres
_ adresse internet
_adresse local
_nom du lien
Ces données sont placées dans le tableau feuil3
Une case en haut (remplie par l'utilisateur) indique si il poséde une connection internet ou non.
En fonction de cela on change la cible du lien hypertexte.
Voila voila Je vous remerci encore pour vos réponses !
PS: Lermite222 je sais que j'ai un gros travail à faire sur ma syntaxe est bien sur je ne me contente pas de mes lignes hasardeuse ;)
Tout en gardant ma methode de rédaction pitoyable j'ai reuci à résoudre mon problème en le contournant.
Au lieu d'appeler ma fonction devant remplir le tableau dans un module je l'appel depuis une feuil (je ne sais pas si mon explication est correcte...)
En utilisant : "DES VARIABLES GLOBALES"
Oui je sais pas bien .... Mais au moins ça marche !
Et pour répondre à ta question
Je dois faire une petite fonction servant à simplifier l'ajout d'une donnée (pour un troubleshooting)
Donc pour faire simple on rentre une fonction(perso) avec 3 parametres
_ adresse internet
_adresse local
_nom du lien
Ces données sont placées dans le tableau feuil3
Une case en haut (remplie par l'utilisateur) indique si il poséde une connection internet ou non.
En fonction de cela on change la cible du lien hypertexte.
Voila voila Je vous remerci encore pour vos réponses !
PS: Lermite222 je sais que j'ai un gros travail à faire sur ma syntaxe est bien sur je ne me contente pas de mes lignes hasardeuse ;)