XL 2010 Ouvertures de fichiers d'extesion différentes

mfb

XLDnaute Occasionnel
Bonjour à tous .
Ci dessous un module permettant de rechercher et d'ouvrir des fichiers dénommés listing de 1 à 4.
Ces fichiers, choisi via combobox, peuvent être indifféremment d' extension xlms ou xlmx .
Actuellement seule l'extension xlms fonctionne.
Ce module est issu d'un fil existant sur le forum (désolé j'ai omis d'en noter le nom des auteurs)
Comment permettre l'ouverture de ces fichiers quelque soit le type d'extension ?

Private Sub CommandButton2_Click()

ComboBox1.AddItem ("Listing1")
ComboBox1.AddItem ("Listing2")
ComboBox1.AddItem ("Listing3")
ComboBox1.AddItem ("Listing4")

'déclaration des variables
Dim extension As String, chemin As String, cheminfichier As String, Listiong1 As String, Fichier As String
extension = ".xlsm"

Fichier = ComboBox1.Value & extension

'If extension = ".slsm" Then extension = ".xls"

cheminfichier = Cells(1, 1).Value & Fichier

'Si la Combobox1 est vide alors envoie message
If ComboBox1 = "" Then
MsgBox ("Sélectionnez un listing dans la liste déroulante")
Exit Sub
End If

If Dir(cheminfichier, vbNormal) = "" Then
MsgBox ("pas de fichier")
Else
Workbooks.Open Filename:=cheminfichier
End If

End Sub

Mes bidouilles, en particulier : If extension = ".slsm" Then extension = ".xls"
n'ont rien donné si ce n'est des bugs.

Je m'en remets donc à votre savoir,
Par avance MERCI
Daniel
 

mfb

XLDnaute Occasionnel
Re,
Exact y a erreur xlsm et mieux que slsm.
J'ai changé mais xlsm est la seule extension qui marche.
Dans le module, si je change xlsm en xlsx cela marche bien pour les fichiers portant cette extension.
Que faire pour s'affranchir du type d' extension sans intervention sur le module ?
A+
Daniel
 

mfb

XLDnaute Occasionnel
Re,
Désolé Calvus.
J'ai testé sur un fichier avec "xls" & "*" et xlsx
et en inversant les lignes fichier = Combo .... et 'If extension = .....
Rien y fait.
Contrairement à ce que j'ai dis dans mon fil précédent ça ne marche pas ... ou plus avec xlsx.
Mystère,
Daniel
 

Dranreb

XLDnaute Barbatruc
Bonsoir et joyeux Noël.
Essayez comme ça :
VB:
Dim Chemin As String, ArgDir As String, NomFic As String
Chemin = Cells(1, 1).Value
If ComboBox1.Text = "" Then
  MsgBox "Sélectionnez un listing dans la liste déroulante", vbCritical
  Exit Sub: End If
ArgDir = Chemin & ComboBox1.Text & ".xl*"
NomFic = Dir(ArgDir, vbNormal)
If NomFic = "" Then
  MsgBox "Il n'existe pas de fichier" & vbLf & ArgDir, vbCritical
  Exit Sub: End If
Workbooks.Open Filename:=Chemin & NomFic
 

Discussions similaires

Réponses
19
Affichages
2 K

Statistiques des forums

Discussions
312 232
Messages
2 086 462
Membres
103 222
dernier inscrit
2BS