Ouvrir un .xls à partir d'une listbox VBA

Signaler
Messages postés
5
Date d'inscription
vendredi 3 février 2006
Statut
Membre
Dernière intervention
22 février 2006
-
Messages postés
5
Date d'inscription
vendredi 3 février 2006
Statut
Membre
Dernière intervention
22 février 2006
-
Bonjour,

J'ai une listbox qui comprend une liste de fichiers Excel. Je souhaiterai en sélectionner deux ou trois en multisélection, les afficher à l'aide d'un "msgbox vbyesno" puis les ouvrir directement sans passer par leur emplacement en cliquant sur yes.

SVP HELP!

3 réponses

Messages postés
1788
Date d'inscription
mardi 7 novembre 2000
Statut
Membre
Dernière intervention
11 mars 2006
25
Bonjour,

Plusieurs fichiers en même temps, je ne sais pas si c'est possible
(sans doute que oui, mais je n'ai jamais essayé). En tous les cas pour
ouvrir un fichiers à la fois à partir d'une ListBox, tu places un
TextBox (propriété Multiligne à True) et ce code (à toi de changer le
répertoire où se trouvent tes fichiers).



Private Sub List1_Click()

Dim texte, crlf, tout, NomChemin, NomFichier, NomRep

crlf = Chr(13) + Chr(10)

NomChemin = "C:"

NomRep = "Mes documents"

NomFichier = List1.Text

Open NomChemin + NomRep + NomFichier For Input As #1

On Error Resume Next

Line Input #1, texte

tout = texte

If Len(tout) <> 0 Then

While Not EOF(1)

Line Input #1, texte

tout = tout + crlf + texte

Wend

End If

Text1.Text = tout

Close #1

End Sub



jpleroisse



Si une réponse vous convient, cliquez Réponse Acceptée.
Messages postés
1788
Date d'inscription
mardi 7 novembre 2000
Statut
Membre
Dernière intervention
11 mars 2006
25
Re,

Ne tients pas compte de mon code pour des fichiers xls. Le code que je t'ai passé est pour fichiers .txt.

Pour ouvrir plusieurs fichiers.xls danss le classeur actif, utilise ce code.

Tu sélectionnes les fichiers que tu veux ouvrir avec Ctrl + La souris .



Sub OuvreClasseur()

Dim strFiles

Dim xlFiles

Dim blnOuvert As Boolean

Dim strMessage As String

Dim wbk As Workbook

Dim i As Integer

Dim j As Integer



'Affiche la boîte de dialogue Ouvrir

strFiles = Application.GetOpenFilename _

(FileFilter:="Fichiers Excel (*.xls),*.xls", _

Title:="Sélectionnez les fichiers à ouvrir", _

MultiSelect:=True)



'Teste si des fichiers ont été sélectionnés

If TypeName(strFiles) = "Variant()" Then

ReDim xlFiles(UBound(strFiles))

For i = 1 To UBound(strFiles)



'Contrôle l'exention du fichiers

If Right(strFiles(i), 3) = "xls" Then



'Teste si le fichier est déjà ouvert

blnOuvert = False

For Each wbk In Workbooks

If wbk.Path & "" & wbk.Name = strFiles(i) Then

blnOuvert = True

End If

Next wbk



'Stocke le nom de fichiers dans un tableau

If Not blnOuvert Then

j = j + 1

xlFiles(j) = strFiles(i)

strMessage = strMessage & strFiles(i) & vbCr

End If

End If

Next i



'Ouvre tous les fichiers Excel après confirmation

If j > 1 Then

strMessage = "Confirmez-vous l'ouverture des fichiers :" _

& vbCr & strMessage

If MsgBox(strMessage, vbYesNo + vbQuestion) = vbYes Then

For i = 1 To j

Workbooks.Open FileName:=xlFiles(i)

Next i

End If

End If

Else

MsgBox "Aucun fichier sélectionné"

End If

End Sub



jpleroisse



Si une réponse vous convient, cliquez Réponse Acceptée.
Messages postés
5
Date d'inscription
vendredi 3 février 2006
Statut
Membre
Dernière intervention
22 février 2006

je te remercie c'est OK.

Plus Plus.