PROBLE CODE VBA j'ai finalement rajouter un boutonpas eu le choix

ricou69

XLDnaute Occasionnel
Bonjour le forum,
bonjour pierrejean
Merci a Pierrejean qui a vraiment bien travailé sur le premier fil de discution, voila le code marche tres bien j'aimerai s'il il y as une solution bien sur ouvrir n'importe qu'elle format .xls .doc .PDF MP3 WAV ECTT.......
Je vous remercie d'avance de votre aide
ricou69
 
Dernière édition:

Matheop

XLDnaute Occasionnel
Re : Merci a Pierrejean je voudrai si s'est possible améliorer le code vba

Salut ricou69,

Euh.. pourquoi ne pas avoir posté à la suite de ton premier fil de discussion? Là on ne peut pas vraiment t'aider (à part PierreJean qui doit sûrement savoir de quoi tu parles). Tu as deux options : tu le peux le contacter en mp ou tu peux exposer ton code et ton problème.

Cordialement,
Mat'
 

ricou69

XLDnaute Occasionnel
Re : Merci a Pierrejean je voudrai si s'est possible améliorer le code vba

Salut Mat
Pour le premier fil je ne savait pas desolé par contre j'ai oublié de mettre le fichier en piece jointe re desolé
voila le fichier
Merci
Mat
 

Pièces jointes

  • ORIGINALE cherche ouvre un fichier.xls
    95.5 KB · Affichages: 63

Lolote83

XLDnaute Barbatruc
Re : Merci a Pierrejean je voudrai si s'est possible améliorer le code vba

Salut,
Merci pour le fichier, mais je crois savoir que tu travailles avec Excel donc il est normal qu'il t'ouvres les fichiers Excel.
Je n'ai encore jamais vu Excel ouvrir un Word ou un PDF ??? A moins que ....
Cordialement
@+ Lolote83
 

Matheop

XLDnaute Occasionnel
Re : Merci a Pierrejean je voudrai si s'est possible améliorer le code vba

Salut (désolé pour le temps de réponse, pas vraiment eu le temps ce week-end)

Alors techniquement Excel ne sait pas ouvrir les fichiers d'extension qui lui sont inconnues. En gros il saura t'ouvrir du .xls, du .xlsm, du .csv et un tas d'autres trucs mais il est évident qu'il ne connaît pas toutes les extensions; et en plus c'est pas son job donc il faut ruser. Il faut passer par le Shell qui lui saura quoi faire.

Code de ta macro:
Code:
Private Sub CommandButton2_Click()
For n = 0 To ListBox1.ListCount - 1
  If ListBox1.Selected(n) Then
    nom = chemin & ListBox1.List(n)
    ShellExecute 0&, vbNullString, nom, MonParamètre, vbNullString, vbNormalFocus
  End If
Next n
Unload UserForm1
End Sub

Il s'agit de ta macro exécutée lorsque tu cliques sur le bouton concerné. J'ai juste remplacé Workbooks.Open Filename:=nom par ShellExecute 0&, vbNullString, nom, MonParamètre, vbNullString, vbNormalFocus. Pour que cela fonctionne, tu dois ajouter un nouveau module contenant la déclaration de cette fonction.

Code du module:
Code:
Public Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

En théorie cela devrait pouvoir ouvrir tes fichiers avec le programme adapté.

Cordialement,
Mat'
 

ricou69

XLDnaute Occasionnel
Re : Merci a Pierrejean je voudrai si s'est possible améliorer le code vba

Bonjour Matichou
J' ai fait excatement comme tu ma dit tout fonctionne a merveille super travaille de pierrejean et toi meme et de toutes les personne qui ont participé un grand merci je joint le fichier finale pour que tout le monde en profite un grand merci
ricou69
 

Pièces jointes

  • ORIGINALE recherche fichers et ouvre.xls
    102.5 KB · Affichages: 70
  • ORIGINALE recherche fichers et ouvre.xls
    102.5 KB · Affichages: 69
  • ORIGINALE recherche fichers et ouvre.xls
    102.5 KB · Affichages: 70

ricou69

XLDnaute Occasionnel
Re : RESOLU Merci a Pierrejean je voudrai si s'est possible améliorer le code vba

Bonjour a tous ,
J' ai encore besoins d'aide pour un probleme dans le code je vient de m' apercevoir que si une personne travail dejas sur un fichier du repertoire la macros n'ouvre pas le fichier ou un autre fichier et tourne en boucle en + impossible de reprendre la main sur excel et t'il possible d'ouvrir quend meme le fichier meme si une autre personne travaille sur un des fichier merci
cordialement
ricou69
 

Matheop

XLDnaute Occasionnel
Re : Merci je voudrai si s'est possible améliorer le code vba

(Re) coucou,

J'ai envie de dire qu'il suffit de placer la ligne On Error Resume Next devant la ligne ShellExecute ... bien que cela reste à confirmer. Utile pour la détection d'erreur, si Excel détecte une erreur sur la ligne suivant cette instruction alors il se charge de ne pas exécuter cette ligne (dans le cas présent il n'effectuera pas le ShellExecute) et de passer directement à celle d'après. Je pense que ça devrait fonctionner.

Le problème vient du fait que le classeur n'est pas partagé et que donc il y a des soucis lorsque plusieurs utilisateurs souhaitent l'ouvrir en parallèle. Multi-utilisateurs : c'est le système PAPS -> Premier Arrivé Premier Servi ; le deuxième utilisateur ne peut que l'ouvrir en lecture seule (sauf si le classeur est partagé). Bref, à tester.

Cordialement,
Mat'
 

ricou69

XLDnaute Occasionnel
Re : Merci je voudrai si s'est possible améliorer le code vba

Bonjour Matichou
Si je suis sur qu'il est partagé le dossier est sur le serveur commun il est vrais que si j'ouvre un classeur excel dans ce repertoire j'ai bien le message qu'une personne estdejas sur le fichier et que je peux l'ouvrir en lecture seule mais avec le code vba pas de message en + ca tourne en boucle est t'il possible que si une personne est dejas dessus l'ouvrire en lecture seule et si personne dessus l'ouvre normalement ???? merci dejas pour la premiere reponse
En plus je n'ouvre que les .doc et .pdf mais j'ai l'impressions que ca tourne en boucle sur les .xls
Private Sub CommandButton2_Click()
For n = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(n) Then
nom = chemin & ListBox1.List(n)
ShellExecute 0&, vbNullString, nom, MonParamètre, vbNullString, vbNormalFocus CETTE LIGNE EST EN JAUNE
End If
Next n
Unload UserForm1
End Sub
ricou69
 
Dernière édition:

VIARD

XLDnaute Impliqué
Re : Merci le cde vba n'ouvre plus les format .xls mais marche avec les autre .doc

Bonjour Ricou69 et à tous

J'ai vu que tu cherchais à ouvrir certains fichiers PDF etc.
J'ai réalisé un petit programme qui va dans ce sens et à laquel tu pourrais t'inspirer.
donc si tu es intéressé je le dépose.

salutation

Jean-Paul
 

Statistiques des forums

Discussions
312 215
Messages
2 086 339
Membres
103 192
dernier inscrit
Corpdacier