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

ouverture automatique classeur

binoute

XLDnaute Occasionnel
Bonjour le forum,
dans l'exemple joint, je souhaite pouvoir ouvrir un classeur directement à partir d'une combo box.
Dans la colonne N, je rempli des titre generiques representant des familles de produits.
Dans la colonne K, je rempli le nom des classeurs à ouvrir.
La premiere recherche permet de choisir la famille, la deuxieme recherche, apres appui sur valider (je n'ai pas réussi à créer en automatique la liste des classeurs), permettrai l'ouverture du classeur concerné en automatique.
Un petit coup de main serait apprécié.
Merci d'avance
 

Pièces jointes

  • Recherche essai.xls
    43 KB · Affichages: 48
  • Recherche essai.xls
    43 KB · Affichages: 49

Épaf

XLDnaute Occasionnel
Re : ouverture automatique classeur

Code:
Private Sub UserForm_Initialize()
Dim Chemin As String, NomFich As String
    Chemin = "D:\xls\"
    NomFich = Dir(Chemin)
    'Chargement de la listbox
    While NomFich <> ""
         Me.ListBox1.AddItem NomFich
        NomFich = Dir
    Wend
End Sub
 

binoute

XLDnaute Occasionnel
Re : ouverture automatique classeur

Bonjour épaf,
Je suppose que je remplace Chemin = "D:\xls\" par mon arborescence type Chemin = "C:xxxx\yyyyy\xls\" A me confirmer si la syntaxe est bonne ?
Ne faut il pas ajouter une commande d'ouverture ? parce que là, si j'integre ton code dans le mien (sous userform1), ca donne ca :
Private Sub valid_click()
Dim T
With Sheets(NomF)
T = Range(.[B17], .[B100]).Value
End With
T = RecupDoublons(T, 1) 'mettre true pour n'avoir que les nombres
If IsArray(T) Then
liste.List = T
Else
MsgBox T
End If
Dim Chemin As String, NomFich As String
Chemin = "C:xxx\yyy\zzzz\xls\"
NomFich = Dir(Chemin)
'Chargement de la listbox
While NomFich <> ""
Me.liste.AddItem NomFich
NomFich = Dir
Wend
End Sub
Et ça, ça ne provoque rien !
J'ai tout faux ou il y a un oubli ?
Merci pour ta réponse
 

Épaf

XLDnaute Occasionnel
Re : ouverture automatique classeur

Mon code met bien les noms des fichier du répertoire dans la listbox1 ?
Pour ouvrir le fichier voulu, tu mets le code d'ouverture dans l'événement _click ou _change du listbox.
Pour ouvrir ton fichier, je vais au plus simple :
Code:
Sub listbox1_Change() 'ou click()
    Chemin = "C:\TonRep\TonSouRep\"
    NomFich = Me.listbox1.List(Listbox1.listindex)
    if NomFich <> "" then Workbooks.open Chemin & NomFich
End sub
'NomFich = Me.listbox1 'devrait suffire mais je ne connais pas la structure de ta liste, le nombre de colonnes, si tu as un ligne d'en-tête... etc.
Comme tu le supposes, Chemin désigne l'arborescence du répertoire. N'oublie pas \ à la fin du chemin.
Là je m'absente. "D'autres" pourront t'aider si tu as un pb. Mais place les balises Code pour ton code, mis ainsi, c'est illisible -> Sélection du code + 1 clic sur # en mode d'édition et c'est tout
 

binoute

XLDnaute Occasionnel
Re : ouverture automatique classeur

Re épaf,
Avec ce nouveau code pas de probleme, cela fonctionne bien.
Mais pour ce qui est de placer des balises code, j'ai pas tout compris !
En tout cas merci pour ton coup de main et à une prochaine.
Binoute
 

binoute

XLDnaute Occasionnel
Re : ouverture automatique classeur

Bonjour,
un petit complémentd'information sur ce fil :
Est il possible, lorsque l'on est en réseau d'indiquer un chemin du style
\\192.168.0.3\xxx\yyy pour ouvrir à distance les fichiers à partir d'un autre poste du reseau ? (en supposant que les fichiers soient stockés sur 192.168.0.3)
dans l'attente de vos conseils
@+
 

jeanpierre

Nous a quitté
Repose en paix
Re : ouverture automatique classeur

Bonsoir le fil,

Pour peu que le dossier en question, sur l'autre PC, soit en mode partagé, de mémoire, il n'y a même pas besoin de préciser l'adresse, un simple pointage doit faire l'affaire. (un lien, un racourci........ cétéra et cétéra)

Tout peut dépendre, aussi, du type de réseau....

Peux-tu préciser STP.

Bonne soirée.

Jean-Pierre
 

binoute

XLDnaute Occasionnel
Re : ouverture automatique classeur

Bonjour Jean-pierre,
il s'agit d'un reseau tcpip standard. Le dossier est bien partagé, si je fais le pointage et copier / coller, cela ne fonctionne pas.
j'ai essayé sans l'adresse Ip mais le resultat est le meme !
j'ai bien du mal à comprendre
la structure de mon code est celle là :
Dim Chemin As String, NomFich As String
Chemin = "\\192.168.0.3\xxxx\yyyy"
NomFich = Me.liste.List(liste.ListIndex)
If NomFich <> "" Then Workbooks.Open Chemin & NomFich

Est ce un probleme de code ?
@+
 

binoute

XLDnaute Occasionnel
Re : ouverture automatique classeur

Bonjour le forum,
je me permet de relancer ce post car à ce jour, je n'ai toujours pas réussi
à ouvrir un fichier à distance sur mon réseau.
A toutes les bonnes volontés qui se pencheront sur mon probleme,
merci d'avance
@+
 

Discussions similaires

Réponses
2
Affichages
329
Réponses
9
Affichages
240
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…