ou trouve t'on le contrôle qui s'insere dans un Userform et qui permet d'ouvrir un fichier? (comme pour l'interface classique : fichier--> ouvrir...)
ou trouve t'on le contrôle qui s'insere dans un Userform et qui permet d'ouvrir un fichier? (comme pour l'interface classique : fichier--> ouvrir...)
Contrôle pour faire ça, je ne connais pas (VBA97) existe peut-être pour les versions ultérieures... Par contre, avec
Tu accèdes à la boîte de dialogue intégrée. Tu peux récupérer le chemin et le nom du fichier une fois celui-ci ouvert
Code : Sélectionner tout - Visualiser dans une fenêtre à part Application.Dialogs.Item(xlDialogOpen).Show
A+
Edit
Tu parles d'userform, je déduis que tu es sur une appli d'Office. La syntaxe vaut pour Excel. Pour une autre appli, dans l'aide, à dialogs, tu peux retrouver le paramètre (wdDialogOpen pour word, je ne sais pas pour les autres)
ok , merci ca marche bien.
En fait, plus que d'ouvrir un fichier, il faut sélectioner la dernière version d'un fichier excel (bien vu pour l'appli office !) pour le remplacer dans des cellules excel qui contienent des liens vers l'ancienne version .... ce que je veux, c'est que l'utilisateur puisse choisir la version qui lui conviens et que ça s'actualise automatiquement dans toute la table !
merci d'avance![]()
OUf veut dire "c'est juste ça " ou Ouf comme "c'est un ouf !"
![]()
Ouf veut dire "Ouf !" Je ne sais pas faire... et surtout, ne vois pas comment faire... Si une idée me vient, tu en sera le premier averti...
A tout hasard et si tu peux renseigner les propriété de tous tes classeurs en indiquant la version, je te passe un outil que je me suis fabriqué et qui sort les propriétés.
En les testant, si la version est indiquée qulque part, tu pourras éventuellement la récupérer. Parceque récupérer la version de l'appli, je sais faire, mais d'un fichier, non
A tout hasard et en désespoir de cause...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 Sub PropriétésDuDocument() On Error Resume Next For i = 1 To ActiveWorkbook.BuiltinDocumentProperties.Count - 1 MsgBox "Propriété N° " & i & " " & ActiveWorkbook.BuiltinDocumentProperties(i).Name & " " & ActiveWorkbook.BuiltinDocumentProperties(i) If Err <> 0 Then MsgBox "Propriété N° " & i & " " & ActiveWorkbook.BuiltinDocumentProperties(i).Name & " " & ActiveWorkbook.BuiltinDocumentProperties(i).Value End If Err.Clear Next rw = 1 Worksheets(1).Activate For Each P In ActiveWorkbook.CustomDocumentProperties Cells(rw, 1).Value = P.Name Cells(rw, 2).Value = P.Value rw = rw + 1 Next End Sub![]()
A+
En fait pour changer les references issus d'un autre classeur, il ya a un outil qui existe sous excel :
tu ouvres ton classeur main
édition
liaisons
modifier
sélection de la nouvelle version
Je voudrais que cette option s'ouvre automatiquement si je clique sur un bouton pour que l'utilisateur non initié ne se galère pas à le chercher
Si cette instruction ouvre la boite de dialogue pour ouvrir un fichier :
Application.Dialogs.Item(xlDialogOpen).Show
pourquoi je n'arrive pas a le faire marcher pour ce cas :
Application.Dialogs.Item(xlDialogChangeLink).Show
Dialogs(xlDialogChangeLink) cc'est le nom de la boite de dialogue qui m'interesse...
J'ai trouvé ça :
Tu dis
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 Sub LiaisonsLister() aLinks = ActiveWorkbook.LinkSources(xlExcelLinks) If Not IsEmpty(aLinks) Then For i = 1 To UBound(aLinks) MsgBox "Liaison " & i & ":" & Chr(13) & aLinks(i) Next i End If End Sub 'Ensuite, pour modifier les liaisons, tu as Sub LiaisonChanger() ActiveWorkbook.ChangeLink "d:\xls\classeur1.xls", _ "d:\xls\classeur2.xls", xlExcelLinks End Sub
A+
NB - Ta phrase "la dernière version d'un fichier excel " m'a fait penser à un version antérieure d'Excel, non une version antérieure d'un classeur. La prochaine fois, précise mieuxBref, j'ai mal lu...
Bon je sais que je suis sur un sujet pour Excel mais je voudrais faire la meme chose sous project, c'est-à-dire afficher la boite de dialogue "ouvrir" et récupérer le chemin. Quelqu'un sait comment faire ?
Merci
Tu veux dire en VB ? Parce qu'en VBA project veut aussi dire project...je voudrais faire la meme chose sous project![]()
A+
je pense que ladiode parle Microsoft Project, un autre logiciel de la suite Office (que je n'ai pas, donc difficile de répondre)
Oui c'est ca, effectivement j'aurai pu preciser... Désolé
c'est un reflexe à prendre pour tousEnvoyé par ladiode
Dites-vous bien que VOUS êtes dans votre problème, mais que ce qui vous lisent, lisent aussi les problèmes des autres et ne sont pas forcément réceptifs aux subtilités de votre sujet
Plus un sujet est clair et précis, plus il a de chance d'obtenir une réponse pertinente
Quant à ta question, il faudra surement patienter jusqu'a ce qu'un adepte de MSProject passe par ici, désolé de ne pouvoir faire mieux
Partager