Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

selectionner le fichier excel pour BD

  • Initiateur de la discussion Initiateur de la discussion camadian
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

C

camadian

Guest
bonjour le forum

Existe il un moyen pour que dans ma macro je puisse choisir et sélectionner un fichier excel qui me servira de référence pour pour alimenter ma listview car mon fichier ne porte pas toujours le meme nom mais sa structure est toujours identique

En vous remerciant
Camadian

Private Sub UserForm_Initialize()
Dim m As Byte, i As Long, x As Long, k As Byte
Dim Wb As Object, chemin$
Dim lig As Long
ListBox1.Clear
chemin = ThisWorkbook.Path & "\1111-1111.xls"
 

Pièces jointes

Re : selectionner le fichier excel pour BD

Bonjour camadian,
Une proposition dans l'exemple. Dis moi si ça va, je l'enlèverai après (le poid est trop important...)
Cordialement

EDIT A la lecture de la réponse de camadian, j'enlève le fichier et mets le "truc simple et efficace"
VB:
Public Chemin$
Sub Explorateur_fichier()
'Crée une boite de dialogue de sélection de fichiers :
 With Application.FileDialog(msoFileDialogFilePicker)
    .Show
    If .SelectedItems.Count > 0 Then
        Chemin$ = .SelectedItems(1)
    End If
End With
End Sub
Cordialement
 
Dernière édition:
Re : selectionner le fichier excel pour BD

Bonjour, Efgé
Ta solus est simple et efficace

j'avais trouvé ceci qui fonctionne bien également mais c'est vrai que le tps de chargement est long !!!!
Camadian



Private Sub UserForm_Initialize()
Dim m As Byte, i As Long, x As Long, k As Byte
Dim Wb As Object ', chemin$
Dim lig As Long
Dim DialOuvr As FileDialog, Rep, Chemin1 As String
Set DialOuvr = Application.FileDialog(msoFileDialogOpen)
DialOuvr.Filters.Clear
DialOuvr.Filters.Add "Fichiers XLS", "*.xls", 1
DialOuvr.AllowMultiSelect = False
DialOuvr.Title = "Ouverture du fichier xls"
DialOuvr.InitialView = msoFileDialogViewList

Rep = DialOuvr.Show
If Rep = 0 Then
MsgBox "Opération annulée"
Exit Sub
End If
Chemin1 = DialOuvr.SelectedItems(1)
....
End sub
 
Re : selectionner le fichier excel pour BD

Bonjour,

Je pense qu'avec ça tu devrais t'en sortir :
Code:
Private Sub UserForm_Initialize()
    Dim m As Byte, i As Long, x As Long, k As Byte
    Dim Wb As Object, chemin$
    Dim lig As Long

    ListBox1.Clear

    chemin = Application.GetOpenFilename()

Ce code ouvre une fenêtre pour choisir un fichier. Tu sélectionnes celui que tu veux, puis la fonction te retourne le nom complet du fichier que tu as sélectionné (sans l'ouvrir), c'est-à-dire son chemin complet (ex : C:\...\1111-1111.xls).
Le seul inconvénient c'est que l'adresse contient aussi le nom du fichier, je ne sais pas si dans ton cas c'est gênant ?

Bonne chance
 
Re : selectionner le fichier excel pour BD

Bonjour Plugnplay,
cela fonctionne tout aussi simplement mais le temps d'ouverture reste toujours aussi long bon on s'accommodera
Encore un grand merci

Camadian
 
Re : selectionner le fichier excel pour BD

Bonjour à tous,
Pour le problème du temps d'ouverture de l'USF, on peux essayé ça :
VB:
Private Sub UserForm_Initialize()
Dim Plg(), Col&, lig&
ListBox1.Clear
With ListView1
    With .ColumnHeaders
       .Clear
       .Add , , "Numéro", 40
       .Add , , "Indice", 40
       .Add , , "Quantité", 40
       .Add , , "désignation", 150
       .Add , , "Matiere", 40
       .Add , , "Protection", 40
       .Add , , "Observations", 100
    End With
    .View = lvwReport
    .FullRowSelect = True
    .Gridlines = True
'Chargement des données (modifs)
    Workbooks.Open Filename:=Chemin
    Plg = ActiveWorkbook.ActiveSheet.UsedRange.Value
    ActiveWorkbook.Close False
    For lig = LBound(Plg, 1) To UBound(Plg, 1)
        .ListItems.Add , , Plg(lig, 1)
        With .ListItems(ListView1.ListItems.Count).ListSubItems
            For Col = 2 To 7
                .Add , , Plg(lig, Col)
            Next Col
        End With
    Next lig
'Chargement des données (modifs)
End With
Label10.Caption = "Nous somme le : " & Format(Now(), "dd mmmm yyyy") & ", il est " & Format(Now(), "hh : mm") & " heure"
With ListBox1
    .ColumnCount = 7
    .ColumnHeads = True
    .RowSource = Range("A2:G" & Range("A65536").End(xlUp).Row).Address
End With
End Sub
Cordialement
 
Re : selectionner le fichier excel pour BD

Bonjour Efgé
Wouah !!! quel rapidité sans comme une mesure tps d'ouverture divisé par 100
Un grand merci
mais le seul souci est que ma listbox ne se m'est pas a jour ?
Camadian
 
Re : selectionner le fichier excel pour BD

Re
Pas touché à la ListBox. Pas ma faute. 😉
Regarde de ton coté ou met ton fichier sur Ci joint .Fr (pas .Com) et met le lien dans un post.
Cordialement
 
Re : selectionner le fichier excel pour BD

Re
Je sais mais je pense que le fait de récupérer des données externe bloque la listbox ainsi que les entêtes de colonne Je vais voir si en passant par une listview cela fonctionnera beaucoup mieux
mais je te remercie pour ton aide qui me fut bien précieuse.
je joint le fichier
Camadian
 

Pièces jointes

Re : selectionner le fichier excel pour BD

Re
Essai, si j'ai bien compris :
A mettre juste avant (ou après c'est plus logique) la ligne Label10.Caption = ....
VB:
Sheets("Feuil1").Cells(1, 1).Resize(UBound(Plg, 1), UBound(Plg, 2)) = Plg
Cordialement

EDIT Retire ton dernier fichier, il est trop lourd pour le forum et n'ammene pas grand chose au schmilblic.
 
Dernière édition:
Re : selectionner le fichier excel pour BD

ok J'éviterai a l'avenir de rebalancer les fichiers
Mon pb est quand j'ajoute et modifie la référence de ma listview celle ci ne se met pas dans la listbox.
cordialement
camadian
 
Re : selectionner le fichier excel pour BD

Re
Pour tout dire, je ne comprend pas la finalité de cet USF.
Avec quelques explications sur son maniement je comprendrai peut être le problème.
La ListBox se mettait elle à jour avec le premier fichier?
La ListBox doit-elle se remplir avec les mêmes données que la ListView ?
Si ListBox et ListView sont identiques pourquoi en faire deux?
Etc....
En attendant de te re-lire.
Cordialement
 
Re : selectionner le fichier excel pour BD

Avec le logiciel Catia (logiciel de CAO) je génère un fichier Excel (nomenclature) ref, quantité indice désignation ..... cette nomenclature est propre au dessin d'ensemble
mais au moment du lancement en fabrication nous devons fournir au fabriquant un document issu de cette nomenclature avec les pièces qu'il doit nous fournir (quantités ou pièces peuvent différées de la nomenclature) pour exemple j'ai 2 boulons dans mon ensemble, il est préférable de commander 50 boulons (pour pièces de rechange ou pour coût)
et ce sans toucher a mon fichier d'origine car celui ci est lié au dessin
j'espere avoir ete assez clair sur mes explications.
cordialement
Camadian
 
Re : selectionner le fichier excel pour BD

Re
J'aurais bien aimé que tu me donne au moins les renseignements demandés:
La ListBox se mettait elle à jour avec le premier fichier?
La ListBox doit-elle se remplir avec les mêmes données que la ListView ?
Si ListBox et ListView sont identiques pourquoi en faire deux?
Etc....
Cordialement
 
Re : selectionner le fichier excel pour BD

Toutes mes excuses
La listview se met a jour avec le fichier externe
une fois mes données dans ma listview je sélectionne la ou les lignes en les modifiant ou non quantité et/ou observations
je les mets dans ma listbox
une fois ma listbox renseigné j' imprime un document avec les données de ma listbox
donc
ma listbox ne se met pas a jour avec le premier fichier
la listbox ne se rempli pas avec les mêmes données que la listview
la listbox est la listwiew seront différentes

C'est vrai que c'est un peu confus mais mon responsable me demande d'automatiser tout ca afin d'éviter toutes erreur.
cordialement
Camadian
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
40
Affichages
3 K
Réponses
3
Affichages
923
Réponses
4
Affichages
1 K
C
Réponses
6
Affichages
1 K
Hogwarts
H
S
Réponses
10
Affichages
4 K
Sylvain29
S
S
Réponses
3
Affichages
2 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…