Ouverture usf par 2 boutons

bonjour a vous tous

je voudrais ouvrir un usf avec une listview mais a partir du choix de 2 boutons sur un autre usf donc j'ai essayer ceci mais sans succes, la listview doit se remplir en fonction du choix des boutons

dans l'initialisation de l'usf j'ai cette partie qui me pose un souci au niveau boutons car ni click ni value ne fonctionne

mais en ne laissant que la ligne chemin.... cela fonctionne mais sans choix

 If UserForm1.CommandButton2.Value <> "" Then
    Chemin = "C:\facturation\devis\"

        Else

    If UserForm1.CommandButton9.Value <> "" Then
    Chemin = "C:\facturation\facture\"

    End If

ce bloc est issu de celui ci

Private Sub UserForm_Initialize()
    Dim Fichier As Object, FSO As Object, C As Range, Ctr As Long, F As Object

    If gestionfiches.CommandButton2.Value <> "" Then
    Chemin = "C:\facturation-test\devis\"

        Else

    If gestionfiches.CommandButton9.Value <> "" Then
    Chemin = "C:\facturation-test\facture\"

    End If
    Set FSO = CreateObject("Scripting.FileSystemObject")
    'Définit les entêtes de colonnes
    With ListView1
        With .ColumnHeaders
            .Clear 'Supprime les anciens entêtes
            'Ajout des colonnes
            .Add , , "Nom fichier", 200
            .Add , , "Taille (ko)", 50, lvwColumnRight
            .Add , , "Créé le", 60, lvwColumnCenter
            .Add , , "Modifié le", 60, lvwColumnCenter
            .Add , , "Commentaires", 190, lvwColumnLeft
        End With

    .View = lvwReport 'affichage en mode Rapport
    .Gridlines = True 'affichage d'un quadrillage
    .FullRowSelect = True 'Sélection des lignes comlètes
    End With

    '----- Remplissage ListView------------------------

    With ListView1
        For Each Fichier In FSO.getfolder(Chemin).Files
            Ctr = Ctr + 1
            .ListItems.Add , , Fichier.Name
            .ListItems(Ctr).ListSubItems.Add , , Fichier.Name
            .ListItems(Ctr).ListSubItems.Add , , Fichier.Size / 1024
            .ListItems(Ctr).ListSubItems.Add , , Fichier.datecreated
            .ListItems(Ctr).ListSubItems.Add , , Fichier.datelastmodified
        Next Fichier
    End With
    End If

End Sub

le code des boutons est ceci

Private Sub CommandButton2_Click() 'modification
'Unload Me

    modif_devis.Caption = "modification d'un devis"

    modif_devis.Label1.Visible = False

    modif_devis.Show

End Sub
Private Sub CommandButton9_Click() 'modification facture

    modif_devis.Caption = "modification d'une facture"

    modif_devis.Label1.Visible = False

    modif_devis.Show
End Sub

Pascal

Bonjour

A première vue tu devrais utiliser des OptionButtons

bonjour Banzai64

Merci pour ta réponse mais des optionbutton ne cadre pas avec le reste

je vais te joindre un exemple sorti de son contexte avec des bug

Pascal

edit

je n'avais pas remarqué avant cause largeur colonne trop petite mais pourquoi les 2 1ères colonnes se charge de la même chose

bonjour Banzai64

je suis en cours de modification afin de remplacer les boutons par des labels qui seront peut etre plus souple a utiliser

je te tiens au courant si j'y arrive

Pascal

cela ne change rien c'est pareil, les labels sont plus esthétique que les boutons c'est tout je te joints le changement

Pascal

Bonjour

Je comprends mieux ton problème

Chaque fois que tu cliques sur un bouton de l'usf gestionfiches tu inscris le bon chemin dans un label (masqué) soit de l'usf gestionfiches ou de l'usf modif_devis

Ce qui pourrait donner comme code

Dans l'usf modif_devis tu as un label qui se nomme "LabelChemin" que tu rends non visible

Dans l'usf gestionfiches

Private Sub CommandButton12_Click()
  With modif_devis
    .LabelChemin.Caption = "C:\facturation-test\facture\"
    .Caption = "modification d'une facture"
    .Label1.Visible = False
    .Show
  End With
End Sub

Private Sub CommandButton13_Click()
  With modif_devis
    .LabelChemin.Caption = "C:\facturation-test\devis\"
    .Caption = "modification d'un devis"
    .Label1.Visible = False
    .Show
  End With
End Sub

Et dans l'usf modif_devis

Private Sub UserForm_Activate()
Dim Fichier As Object, FSO As Object, C As Range, Ctr As Long, F As Object

  Chemin = Me.LabelChemin.Caption
  Set FSO = CreateObject("Scripting.FileSystemObject")
  '----- Remplissage ListView------------------------
  With ListView1
    For Each Fichier In FSO.getfolder(Chemin).Files
      Ctr = Ctr + 1
      .ListItems.Add , , Fichier.Name
      '.ListItems(Ctr).ListSubItems.Add , , Fichier.Name
      .ListItems(Ctr).ListSubItems.Add , , Fichier.Size / 1024
      .ListItems(Ctr).ListSubItems.Add , , Fichier.datecreated
      .ListItems(Ctr).ListSubItems.Add , , Fichier.datelastmodified
    Next Fichier
  End With
End Sub

Private Sub UserForm_Initialize()
  'Définit les entêtes de colonnes
  With Me.ListView1
    With .ColumnHeaders
      .Clear 'Supprime les anciens entêtes
      'Ajout des colonnes
      .Add , , "Nom fichier", 200
      .Add , , "Taille (ko)", 50
      .Add , , "Créé le", 60
      .Add , , "Modifié le"
      .Add , , "Commentaires", 190
    End With
    .View = lvwReport 'affichage en mode Rapport
    .Gridlines = True 'affichage d'un quadrillage
    .FullRowSelect = True 'Sélection des lignes comlètes
  End With
End Sub

A tester

bonjour Banzai64

j'ai le même bug avec les 2 fichiers exemples que j'ai joints ( commandbutton où label ) je te joints l'aperçu

Pascal

edit: c'est parfait après la création d'un labelchemin car celui que tu évoques comme caché est introuvable

j' ai mis en commentaire les autres colonnes de la listview

j'ai meme problème de chemin avec le bouton "valider"

Private Sub CommandButton1_Click()
    Chemin = "C:\facturation-test\devis\"
     Workbooks.Open Chemin & "\" & Me.ListView1.SelectedItem.Text
          Unload Me
End Sub

Pascal

Bonjour

Remplaces la ligne correspondante par

.ListItems(Ctr).ListSubItems.Add , , Round(Fichier.Size / 1024, 2)

Supprimes la ligne

Private Sub CommandButton1_Click()
  'Chemin = "C:\facturation-test\devis\"
  Workbooks.Open Chemin & "\" & Me.ListView1.SelectedItem.Text
  Unload Me
End Sub

bonsoir Banzai64

Merci beaucoup de ton intervention de ce dimanche

ceci clos ce post

Pascal

Rechercher des sujets similaires à "ouverture usf boutons"