Je tente présentement d'ouvrir plusieurs fichiers Excel à la fois avec VB en
utilisant la méthode ShellExecute. Le problème c'est qu'il ouvre tous mes
fichiers mais un par dessus l'autre. Résultat? À la place d'avoir 5 fichiers
Excel d'ouverts, j'en ai 1 qui est le dernier ouvert.
Quelqu'un peut m'aider?
Voici mon code:
'''''''''''''''''''''''''''''''''''''''''''''''''''''''
Do While iCptOpen <= iCpt
'On cherche l'exécutable
Call FindExecutable(sTabFichier(iCptOpen), "", strEXE)
'Si le type de fichier s'ouvre avec un .exe
If InStr(1, strEXE, "\") > 0 Then
'On exécute le programme associé au fichier
Call ShellExecute(hwnd, "Open", (strPath), "", App.Path,
0)
Else
'Message d'erreur
MsgBox "Impossible d'ouvrir ce type d'extension"
End If
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Zoury
Salut Dominic! :O)
Essaie en mentionnant seulement les noms de fichiers pour voir... ici ça ouvre 3 Excel parallèlement..
'*** ' Module1 Option Explicit
Private Const SW_NORMAL As Long = 1
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 Main()
Dim i As Integer
For i = 1 To 3 Call ShellExecute(0, vbNullString, "ws" & i & ".xls", vbNullString, "c:", SW_NORMAL) Next i
End Sub '***
-- Cordialement Yanick Lefebvre - MVP pour Visual Basic http://faq.vb.free.fr/?rubrique=0 - http://www.mvps.org/vbnet/ http://www.mentalis.org/agnet/apiguide.shtml - http://www.mztools.com/ "+The_Taco+" wrote in message news:%23c72Ra$
Je tente présentement d'ouvrir plusieurs fichiers Excel à la fois avec VB
en
utilisant la méthode ShellExecute. Le problème c'est qu'il ouvre tous mes fichiers mais un par dessus l'autre. Résultat? À la place d'avoir 5
fichiers
Excel d'ouverts, j'en ai 1 qui est le dernier ouvert. Quelqu'un peut m'aider?
Voici mon code:
''''''''''''''''''''''''''''''''''''''''''''''''''''''' Do While iCptOpen <= iCpt 'On cherche l'exécutable Call FindExecutable(sTabFichier(iCptOpen), "", strEXE)
'Si le type de fichier s'ouvre avec un .exe If InStr(1, strEXE, "") > 0 Then 'On exécute le programme associé au fichier Call ShellExecute(hwnd, "Open", (strPath), "",
App.Path,
0) Else 'Message d'erreur MsgBox "Impossible d'ouvrir ce type d'extension" End If
Essaie en mentionnant seulement les noms de fichiers pour voir... ici ça
ouvre 3 Excel parallèlement..
'***
' Module1
Option Explicit
Private Const SW_NORMAL As Long = 1
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 Main()
Dim i As Integer
For i = 1 To 3
Call ShellExecute(0, vbNullString, "ws" & i & ".xls", vbNullString,
"c:", SW_NORMAL)
Next i
End Sub
'***
--
Cordialement
Yanick Lefebvre - MVP pour Visual Basic
http://faq.vb.free.fr/?rubrique=0 - http://www.mvps.org/vbnet/
http://www.mentalis.org/agnet/apiguide.shtml - http://www.mztools.com/
"+The_Taco+" <dominic.feron@dessausoprin.com> wrote in message
news:%23c72Ra$ZDHA.2580@TK2MSFTNGP12.phx.gbl...
Je tente présentement d'ouvrir plusieurs fichiers Excel à la fois avec VB
en
utilisant la méthode ShellExecute. Le problème c'est qu'il ouvre tous mes
fichiers mais un par dessus l'autre. Résultat? À la place d'avoir 5
fichiers
Excel d'ouverts, j'en ai 1 qui est le dernier ouvert.
Quelqu'un peut m'aider?
Voici mon code:
'''''''''''''''''''''''''''''''''''''''''''''''''''''''
Do While iCptOpen <= iCpt
'On cherche l'exécutable
Call FindExecutable(sTabFichier(iCptOpen), "", strEXE)
'Si le type de fichier s'ouvre avec un .exe
If InStr(1, strEXE, "") > 0 Then
'On exécute le programme associé au fichier
Call ShellExecute(hwnd, "Open", (strPath), "",
App.Path,
0)
Else
'Message d'erreur
MsgBox "Impossible d'ouvrir ce type d'extension"
End If
Essaie en mentionnant seulement les noms de fichiers pour voir... ici ça ouvre 3 Excel parallèlement..
'*** ' Module1 Option Explicit
Private Const SW_NORMAL As Long = 1
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 Main()
Dim i As Integer
For i = 1 To 3 Call ShellExecute(0, vbNullString, "ws" & i & ".xls", vbNullString, "c:", SW_NORMAL) Next i
End Sub '***
-- Cordialement Yanick Lefebvre - MVP pour Visual Basic http://faq.vb.free.fr/?rubrique=0 - http://www.mvps.org/vbnet/ http://www.mentalis.org/agnet/apiguide.shtml - http://www.mztools.com/ "+The_Taco+" wrote in message news:%23c72Ra$
Je tente présentement d'ouvrir plusieurs fichiers Excel à la fois avec VB
en
utilisant la méthode ShellExecute. Le problème c'est qu'il ouvre tous mes fichiers mais un par dessus l'autre. Résultat? À la place d'avoir 5
fichiers
Excel d'ouverts, j'en ai 1 qui est le dernier ouvert. Quelqu'un peut m'aider?
Voici mon code:
''''''''''''''''''''''''''''''''''''''''''''''''''''''' Do While iCptOpen <= iCpt 'On cherche l'exécutable Call FindExecutable(sTabFichier(iCptOpen), "", strEXE)
'Si le type de fichier s'ouvre avec un .exe If InStr(1, strEXE, "") > 0 Then 'On exécute le programme associé au fichier Call ShellExecute(hwnd, "Open", (strPath), "",
App.Path,
0) Else 'Message d'erreur MsgBox "Impossible d'ouvrir ce type d'extension" End If