créer un hyperlin des classeur ouverts

baara

XLDnaute Nouveau
bonjour,

voila j'aimerais mettre sur mon fichier récapitulatif, sur la variable a(3) un hyperlien du fichier où son récuperer les infos.


Sub essai()
Dim fs, f, f1, fc, s
Dim a(14)
Application.ScreenUpdating = False
specdossier = ActiveWorkbook.Path
fic = ActiveWorkbook.Name
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFolder(specdossier)
Set fc = f.Files
pos = 3
For Each f1 In fc
s = f1.Name
b = Right(s, 4)
If b = "xlsx" And s <> ActiveWorkbook.Name Then
Workbooks.Open Filename:=specdossier & "\" & s
Sheets("feuil1").Activate
a(1) = Cells(2, 2)
a(2) = Cells(1, 1)
a(3) = Cells(5, 3)
a(4) = Cells(5, 4)
a(5) = Cells(5, 6)
a(6) = Cells(9, 3)
a(7) = Cells(9, 4)
a(8) = Cells(9, 6).Value + Cells(9, 7).Value
a(9) = Cells(38, 3)
a(10) = Cells(38, 4)
a(11) = Cells(38, 6)
a(12) = Cells(45, 8)
a(13) = Cells(9, 9)
a(14) = Cells(9, 10)
ActiveWorkbook.Close
Windows(fic).Activate
Sheets("feuil1").Activate
For u = 1 To 14
Cells(pos, u) = a(u)

Next u
pos = pos + 1
End If
Next
End Sub

Merci.
 

baara

XLDnaute Nouveau
Re : créer un hyperlin des classeur ouverts

Désolé, mais il me met Erreur d'éxécution '5' argument ou appel de précédure incorrect.
Escuse moi j'ai aussi pris l'ancienne version de la macro, j'ai suligné en rouges less différences si ca peut t'aider

Sub essai()
Dim fs, f, f1, fc, s
Dim a(14)
Application.ScreenUpdating = False
specdossier = ActiveWorkbook.Path
fic = ActiveWorkbook.Name
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFolder(specdossier)
Set fc = f.Files
pos = 3
For Each f1 In fc
s = f1.Name
b = Right(s, 4)
If b = "xlsx" And s <> ActiveWorkbook.Name Then
Workbooks.Open Filename:=specdossier & "\" & s
Sheets("Résultat").Activate
a(1) = Cells(2, 2)
a(2) = Cells(1, 1)
a(3) = Cells(5, 3)
a(4) = Cells(5, 4)
a(5) = Cells(5, 6)
a(6) = Cells(9, 3)
a(7) = Cells(9, 4)
a(8) = Cells(9, 6).Value + Cells(9, 7).Value
a(9) = Cells(38, 3)
a(10) = Cells(38, 4)
a(11) = Cells(38, 6)
a(12) = Cells(45, 8)
a(13) = Cells(9, 9)
a(14) = Cells(9, 10)
ActiveWorkbook.Close
Windows(fic).Activate
Sheets("feuil1").Activate
For u = 1 To 14
Cells(pos, u) = a(u)

Next u
pos = pos + 1
End If
Next
End Sub
 

baara

XLDnaute Nouveau
Re : créer un hyperlin des classeur ouverts

Car j'ai un classeur nommé récapitulatif (qui contient la macro et qui contient un feuille nommé "Feuil1", qui est dans le même dossier que les classeurs excel ou je vait chercher les données. Et tout les classeur excel dont je récupère les données n'ont qu'une seule feuille nommé "Résultat".
 

tototiti2008

XLDnaute Barbatruc
Re : créer un hyperlin des classeur ouverts

Re,

Peut-être, mais c'est un peu à l'aveugle

Code:
ActiveSheet.Hyperlinks.Add Anchor:=Cells(pos, 3), Address:=specdossier & "\" & s, TextToDisplay:=cstr(a(3))

Si pas ça, il faudrait que tu nous envoie un bout de fichier pour essayer de comprendre sur un cas "concret"
 

Discussions similaires

Réponses
0
Affichages
287

Statistiques des forums

Discussions
314 160
Messages
2 106 517
Membres
109 611
dernier inscrit
Blanchem