lien hypertexte qui se paume quand je tri le tableau... :(

BelTitou

XLDnaute Nouveau
Rebonjour a toutes et a tous...
d'abord désolé pour le vocabulaire de mon dernier post... j'ai vu que ca en a choqué quelques un...

sinon j'ai un probleme avec un tableau:
dans mon tableau je cré des lien hypertextes sur la premiere ligne via une macro du type:

Range("CI3").Select
ActiveCell.FormulaR1C1 = Code_Affaire & "-chiffrage.xls"
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:= _
Fichier_Chiffrage, TextToDisplay:=Code_Affaire & "-chiffrage.xls"

ensuite je copie tout le tableau de la premiere vers la deuxieme ligne puis je tri ce tableau a partir de la deuxieme ligne toujours avec ma macro:

Selection.Sort Key1:=Range("A4"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal


le probleme c'est que quand je n'ai qu'une ligne (donc un seul lien) ca marche mais dès que j'ai deux lignes, le second lien s'affiche bien en bleu mais la valeur cible du lien se retrouve sur la première ligne :confused:

j'arrive pas a comprendre si mon erreur vient de ma facon de faire le lien ou de la facon dont je tri le tableau :(

merci d'avance
 
C

Compte Supprimé 979

Guest
Re : lien hypertexte qui se paume quand je tri le tableau... :(

Salut BelTitou,

Je pense que le problème vient plutôt de ta selection pour le tri

Mieux vaut utiliser
Code:
Range("A1:A100").Sort Key1:=Range("A4"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal

Car le lien hypertexte suit la cellule triée

Sinon un petit bout de ton fichier ?

A+
 

BelTitou

XLDnaute Nouveau
Re : lien hypertexte qui se paume quand je tri le tableau... :(

merci pour ton aide mais ca vient pas de ca a priori: le probleme viendrait du copier coller que je fais a un moment... je te joins un petit fichier ou tu verras le probleme plus facilement que si j'essaye d'expliquer. sinon j'ai pensé a un truc qui pourrait me sauver mais je sais pas l'ecrire en VBA: au lieu de copier mes données puis de les coller une ligne plus bas il faudrait que je "décale" mes données d'une ligne vers le bas... mais là j'ai pas trouver et j'ai l'impression que la fonction DECALER ne sert pas a ca...
 

Pièces jointes

  • test.xls
    27.5 KB · Affichages: 57
  • test.xls
    27.5 KB · Affichages: 58
  • test.xls
    27.5 KB · Affichages: 63
C

Compte Supprimé 979

Guest
Re : lien hypertexte qui se paume quand je tri le tableau... :(

Salut BelTitou,

Merci pour le fichier, c'est nettement plus clair :)

Je pense que ton problème vient du PasteSpecial !?
Pourquoi un collage spécial et non un collage tout court ?

Sinon pour ta Macro3, pour un décalage de ligne vers le bas,
tu peux faire
Code:
Sub Macro3()
'
' Macro3 Macro
' Macro enregistrée le 22/09/2009 par user
    Range("E3:F3").Insert Shift:=xlDown
    Range("E4:F9").Select
    Selection.Sort Key1:=Range("E4"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
End Sub
Et là, plus de problème ;)

A+
 

BelTitou

XLDnaute Nouveau
Re : lien hypertexte qui se paume quand je tri le tableau... :(

coucou Bruno,
alors en fait le probleme ne vient pas du SpecialPaste: j'ai essayé avec un normal et c'est pas mieux :(
sinon le coup du insert ça aurait pu être parfait sauf que dans ma premiere ligne de tableau j'ai des formules que je veux garder pour les prochaines lignes à ajouter... c'est pour ça que je suis passé par un copier-coller une ligne plus bas puis je supprime les zones sans formules de la premiere ligne...
par contre j'ai remarqué que ça plante uniquement quand je fais le copier-coller sur deux zones qui se chevauchent donc je vais tout betement copier mon tableau à un autre endroit de ma feuille puis recopier ce nouveau tableau sur l'ancien une ligne plus bas... faute de mieux c'est la seule solution que je vois pour l'instant... ce sera un poil plus long lors de l'execution de la macro mais vu que j'en suis déjà à 20 secondes d'execution je suis plus à 1 seconde près :)
justement en parlant de ça: lors de cette grosse macro, j'ouvre plusieurs fichiers pour y créer des liens entre eux et c'est pas beau de voir tous les fichiers qui s'ouvrent et qui "clignotent" quand les liens se créent... y'a pas un moyen de bloquer l'affichage sur le premier classeur et d'afficher une box genre "Veuillez patienter..." le temps que tout se fasse ?

sinon merci beaucoup pour tes conseils et le temps consacré...

vive XLD !!!!!
 
C

Compte Supprimé 979

Guest
Re : lien hypertexte qui se paume quand je tri le tableau... :(

Re,

sinon le coup du insert ça aurait pu être parfait sauf que dans ma premiere ligne de tableau j'ai des formules que je veux garder pour les prochaines lignes à ajouter
Tu peux les recréer de toute pièce après l'insertion ;)
Code:
Sub Macro3()
    Range("E3:F3").Insert Shift:=xlDown
    ' Par exemple
    Range("A3").FormulaLocal = "=SOMME(B3:D3)"
    Range("E4:F9").Select
    Selection.Sort Key1:=Range("E4"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
End Sub

c'est pas beau de voir tous les fichiers qui s'ouvrent et qui "clignotent" quand les liens se créent... y'a pas un moyen de bloquer l'affichage sur le premier classeur et d'afficher une box genre "Veuillez patienter..." le temps que tout se fasse ?
Tu peux essayer, mais ce n'est pas garantie
Code:
Application.ScreenUpdating = False
'ton code
Application.ScreenUpdating = True

A+
 

Discussions similaires

Réponses
16
Affichages
557
Réponses
21
Affichages
1 K
Réponses
5
Affichages
512

Statistiques des forums

Discussions
312 485
Messages
2 088 810
Membres
103 971
dernier inscrit
abdazee