Shellexecute aidez moi! [Résolu]

ticrain 178 Messages postés jeudi 15 mars 2007Date d'inscription 2 janvier 2015 Dernière intervention - 26 avril 2007 à 14:23 - Dernière réponse :  mortalino
- 28 avril 2007 à 01:03
Je dois ouvrir des fichier excel et word que joré selectionner dans une listobox en appuyant sur un bouton:
est ce que qqun peut m'aider je c que shellexecute est efficace pour cela, g commencé un bout de code mais je c pas le finir ce que je peut vous dire c'est que les fichier .DOC et .XLS se trouve sur C:.
J'ai commencé se bout de code mais je c meme pas si je pars dans le bon sens? et surtout il est pas fini si qqun peut m'aider se serai sympa.

Private 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


Private Sub CommandButton2_Click()
Dim nomdoc As String
nomdoc = ListBox1.List(ListBox1.ListIndex)
...........
..........je sais plus après

Merci
Afficher la suite 

Votre réponse

101 réponses

Meilleure réponse
jrivet 7401 Messages postés mercredi 23 avril 2003Date d'inscription 6 avril 2012 Dernière intervention - 27 avril 2007 à 09:28
3
Merci
Salut,
Bah minute papillon, j'ai un travail aussi
tiens teste ceci

Option Explicit
Private 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
Private Const SW_MAXIMIZE = 3
Private Sub commandbutton2_Click()
Dim nomdoc As String
Dim i As Integer
'Pour faire référence a ton classeur
'de départ (pas sur que ce soit utile mais bon)
'teste sans si tu veux
Dim WbDepart As Workbook
   Set WbDepart = ActiveWorkbook
   For i = 0 To ListBox1.ListCount - 1
       If ListBox1.Selected(i) Then
           nomdoc = ListBox1.List(i)
           'on regarde si l'extension du fichier est un classeur
           If UCase(Mid(nomdoc, InStrRev(nomdoc, ".") + 1)) = "XLS" Then
               'on fait alors appel a Excel pour ouvrir le doc
               Call Application.Workbooks.Open("C:\" & nomdoc)
               Call WbDepart.Activate
           Else
               'Sinon ShellExecute
               Call ShellExecute(0, "open", "C:\" & nomdoc, vbNullString, vbNullString, SW_MAXIMIZE)
           End If
       End If
   Next
   Set WbDepart = Nothing
End Sub , ----
[code.aspx?ID=41455 By Renfield]

@+: Ju£i?n
Pensez: Réponse acceptée

Merci jrivet 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 125 internautes ce mois-ci

Commenter la réponse de jrivet
drikce06 2247 Messages postés lundi 29 mai 2006Date d'inscription 29 mai 2008 Dernière intervention - 26 avril 2007 à 14:38
0
Merci
??????????????????????????????????????????????????????????????????????????????????

 Drikce 06

Si la réponse vous convient: Réponse acceptée. Si la réponse vous convient pas:
Commenter la réponse de drikce06
drikce06 2247 Messages postés lundi 29 mai 2006Date d'inscription 29 mai 2008 Dernière intervention - 26 avril 2007 à 14:40
0
Merci
Tu pourrai déjà au moins avoir le bon sens de continuer sur le topic où je t'ai répondu : http://www.vbfrance.com/infomsg_SHELLEXECUTE_930106.aspx#2

MERCI POUR LES GENS QUI ESSAYENT DE T'AIDER!

 Drikce 06

Si la réponse vous convient: Réponse acceptée. Si la réponse vous convient pas:
Commenter la réponse de drikce06
ticrain 178 Messages postés jeudi 15 mars 2007Date d'inscription 2 janvier 2015 Dernière intervention - 26 avril 2007 à 14:40
0
Merci
keski se passe DRIKCE 06 ta rien compri se que g ecrit?
ou tu c pas la solution?
Commenter la réponse de ticrain
drikce06 2247 Messages postés lundi 29 mai 2006Date d'inscription 29 mai 2008 Dernière intervention - 26 avril 2007 à 14:40
0
Merci
Je m'emporte un peu, je vois que tu as changé de catégorie!

 Drikce 06

Si la réponse vous convient: Réponse acceptée. Si la réponse vous convient pas:
Commenter la réponse de drikce06
ticrain 178 Messages postés jeudi 15 mars 2007Date d'inscription 2 janvier 2015 Dernière intervention - 26 avril 2007 à 14:41
0
Merci
oui c vrai désolé pour ça mais je me senté un peu délaissé
Commenter la réponse de ticrain
ticrain 178 Messages postés jeudi 15 mars 2007Date d'inscription 2 janvier 2015 Dernière intervention - 26 avril 2007 à 14:42
0
Merci
drikce 06 tu as une solution à mon problème? ou m'aider à avancer?merci
Commenter la réponse de ticrain
drikce06 2247 Messages postés lundi 29 mai 2006Date d'inscription 29 mai 2008 Dernière intervention - 26 avril 2007 à 14:44
0
Merci
Je viens de mettre une réponse sur l'autre topic par rapport au code que tu avais mis!

 Drikce 06

Si la réponse vous convient: Réponse acceptée. Si la réponse vous convient pas:
Commenter la réponse de drikce06
cs_Nicko11 1141 Messages postés mercredi 7 mars 2007Date d'inscription 19 septembre 2007 Dernière intervention - 26 avril 2007 à 14:45
0
Merci
Je ne te comprend pas la. tu essaies de battre le record de forum qui servent a rien dans la meme journé.

Cela fait plusieurs jours qui tu ne parviens pas a ouvrir un document grace a son nom.
Et cela fait, je ne sais combien de reponse que tu as recu a ce sujet. J'ai l'impression que tant que l'on ne t'auras pas filer le code a la virgule pres, tu n'arretera pas de poster.

Poses toi 5 minutes et reflechir un peu.

Que ce soit avec un listbox ou inputbox, ce que tu veux faire est la meme chose. Ouvrir un ficher dans C:\   grace a son nom et la commence shell ou shell execute.

Ce qui serait intelligent de faire depuis le temps, c'est de regarder des codes tout fait ou sinon de voir dans ton aide de quels parametres cette fonction a besoin.

Donc au lieu de poster a tout va, commence par checher s'il te plait car cela deviens fort irritant cette affaire la.

Dans un premier temps, essaie d'ouvir Word par le code, et ensuite ouvrir un fichier bien precis, et enfin tu pourras parametres ta fonction pour ouvrir un fichier dont le nom est dans un textbox ou listbox ou inputbox.
Commenter la réponse de cs_Nicko11
ticrain 178 Messages postés jeudi 15 mars 2007Date d'inscription 2 janvier 2015 Dernière intervention - 26 avril 2007 à 14:45
0
Merci
merci sinon toi tu n'as pas d'idées? tu comprend mon problème ou pas tout?
Commenter la réponse de ticrain
cs_Nicko11 1141 Messages postés mercredi 7 mars 2007Date d'inscription 19 septembre 2007 Dernière intervention - 26 avril 2007 à 14:50
0
Merci
Mais bien sur que je comprend ton pb mais s'iol te plait, tu sais que la methode est shell ou shell execute, regarde comment elle fonctionne avec l'aide ou les sources VBfrance.

Tu perds du temps dans des forums qui n'avances pas car tu ne cherches. Je suis sur que si tu cherchais un peu, tu aurais trouver la reponse depuis longtemps.
Commenter la réponse de cs_Nicko11
ticrain 178 Messages postés jeudi 15 mars 2007Date d'inscription 2 janvier 2015 Dernière intervention - 26 avril 2007 à 14:55
0
Merci
Merci mais je c maintenant ouvir un fichier word de meme qu'excel mais par contre se que tu n'a pas compris c'est que je cherche la commande qui permettra d'ouvrir un fichier avec l'application appropriée, donc j'avance mon pogramme avance alors arrete de dire que mes post servent à rien, je te rapel que je suis dans la section débutants
donc si tu n'aime pas les debutants ne nous parle plus
Commenter la réponse de ticrain
ticrain 178 Messages postés jeudi 15 mars 2007Date d'inscription 2 janvier 2015 Dernière intervention - 26 avril 2007 à 15:00
0
Merci
j'ai cherché! tu peu m'aider ou tu veux continué a me critiiquer?
Commenter la réponse de ticrain
Charles Racaud 3181 Messages postés dimanche 15 février 2004Date d'inscription 9 avril 2017 Dernière intervention - 26 avril 2007 à 15:01
0
Merci
Débutant ou pas ca n'empeche pas de chercher.
Du ShellExecute, ce n'est pas ce qui manque ici ni sur ton moteur de recherche.










__________
 Kenji
Commenter la réponse de Charles Racaud
ticrain 178 Messages postés jeudi 15 mars 2007Date d'inscription 2 janvier 2015 Dernière intervention - 26 avril 2007 à 15:03
0
Merci
j'ai pas trouvé se qu'il me fallé sachant que je programme sous VBA!
Commenter la réponse de ticrain
Charles Racaud 3181 Messages postés dimanche 15 février 2004Date d'inscription 9 avril 2017 Dernière intervention - 26 avril 2007 à 15:06
0
Merci
T'est sur d'avoir chercher ?
C'a m'as pris le temps de chargemant de la page (soit quelques secondes) :

http://search.codes-sources.com/r.aspx?r=ShellExecute&l=vba





__________
 Kenji
Commenter la réponse de Charles Racaud
cs_Nicko11 1141 Messages postés mercredi 7 mars 2007Date d'inscription 19 septembre 2007 Dernière intervention - 26 avril 2007 à 15:07
0
Merci
Et bien saches que ta reaction est inapprorié car c'est nous qui devriont etre en colere. Tu as compter le nombre de posts et de forums que tu as juste pour ouvrir un fichier.

Alors certes tu es debutant, mais saches que je sais pas non plus faire ce que tu me demandes.
Cependant, contrairement a toi, je cherches, et c'est ca que je te reproche. C'est pas que tu sois debutant, c'est que tu ne cherches pas. A ton avis, pourquoi personne ne te repond. Ca vient pas de moi

Donc, ce que j'essaies de te dire, c'est que tu perds du temps a attendre que le code vienne de nous au lieu d'essayer de le faire toi meme. Etpour te montrer que je ne suis pas rancunier, je te proposerai la chose suivante.

Tu souhaites savoir quel logiciel correspond a ton fichier. Mais tu as certainement plein de solutions.


Genre : tu repertories bien tous tes fichiers dans une listebox. Alors pourquoi ne pas mettre leur extention avec?


 
Commenter la réponse de cs_Nicko11
ticrain 178 Messages postés jeudi 15 mars 2007Date d'inscription 2 janvier 2015 Dernière intervention - 26 avril 2007 à 15:11
0
Merci
je l'ai vu ce code sa ne marche pas pour moi?
il me met une erreur de compilation sur le Me.hwnd
voila pk je demande de l'aide
Commenter la réponse de ticrain
cs_Nicko11 1141 Messages postés mercredi 7 mars 2007Date d'inscription 19 septembre 2007 Dernière intervention - 26 avril 2007 à 15:11
0
Merci
Donc UN TRES GRAND MERCI a Charles car il nous prouve bien que si tu avais un peu cherches il y a plusieurs jours, tu aurais fini depuis longtemps.

Il y a personne ici qui a un pb avec les debutants, on est juste faché avec ceux qui ne cherchent pas. Regarde ceux qui posts bien avec une question precise. Bizarement ils ont une reponse tres mais alors tres rapide.

Par exemple, lis le reglement et tu verras que tu ne le respecte pas trop. Si tu trouves mon ton un peu aggressif c'est que tu m'y pousses.
Commenter la réponse de cs_Nicko11
drikce06 2247 Messages postés lundi 29 mai 2006Date d'inscription 29 mai 2008 Dernière intervention - 26 avril 2007 à 15:13
0
Merci
J'ai écris ça pour le problème du hwnd mais ne marche pas encore mais ça vient d'autre chose que le hwnd maintenat!

Private Declare Function ShellExecute Lib "shell32.dll" (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
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Const SW_MAXIMIZE = 3


Private Sub CommandButton1_Click()


Dim hwnd As Long
Dim nomdoc As String


hwnd = FindWindow(vbNullString, Me.Name)
nomdoc = "C:\Doc3.doc"
Call ShellExecute(hwnd, "open", nomdoc, vbNullString, vbNullString, SW_MAXIMIZE)


End Sub

 Drikce 06

Si la réponse vous convient: Réponse acceptée. Si la réponse vous convient pas:
Commenter la réponse de drikce06

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

shellexecute aidez moi! - page 2