Afficher le multipage correspondant à la frame afficher

SSIAP2

XLDnaute Occasionnel
Bonjour à tous

j'utilise une macro que j'ai bidouiller pour afficher une frame selon la ou les valeur de la seconde colonne de ma listview celui ci s'affiche sur une multipage
Code:
On Error Resume Next
With UserForm1

  For li = 1 To L1.ListItems.Count
  
TextBox1.Text = L1.ListItems(li).ListSubItems(1)
UserForm1.Controls(L1.ListItems(li).ListSubItems(1).Text).Visible = True
  Next li
End With
jusque la pas de soucis le probleme qui se pose c'est que je souhaite que quand la frame s'affiche la selection de la multipage se fasse automatiquement.

comment puis proceder svp merci
 

SSIAP2

XLDnaute Occasionnel
Re : Afficher le multipage correspondant à la frame afficher

Bonjour laetitia et merci pour ton conseil donc j'ai fais un fichier joint et renouvelle mes explication et mon souhait.

j'ai une listview qui est alimenté par une macro de recherche celle ci
Code:
Private Sub C4_Change()
Label6.Caption = ""
 
      Dim i&, fin&
    C1 = "": C2 = "": C3 = ""
    If C4 = "" Then L1.ListItems.Clear: Label6.Caption = "": Exit Sub
    fin = Feuil1.Range("A65536").End(xlUp).Row
    aa = Feuil1.Range("A4:I" & fin)
    For i = 1 To UBound(aa)
        For a = 1 To UBound(aa, 2)
            If aa(i, a) Like "*" & C4 & "*" Then aa(i, 9) = "oui"
        Next a
    Next i
    Y = 1
    For i = 1 To UBound(aa)
        If aa(i, 9) = "oui" Then Y = Y + 1
    Next
    If Y = 2 Then Label6.Caption = Y - 1 & " Ligne faisant référence à votre recherche a été trouvée "
    If Y > 2 Then Label6.Caption = Y - 1 & " Lignes faisant référence à votre recherche ont été trouvées  "
    If Y < 2 Then L1.ListItems.Clear: Label6.Caption = "": GoTo 1
    ReDim bb(Y - 1, 8)
    Y = 1
    For i = 1 To UBound(aa)
        If aa(i, 9) = "oui" Then
            For a = 1 To 8
                bb(Y, a) = aa(i, a)
            Next a
            Y = Y + 1
        End If
    Next i
    With L1
        .ListItems.Clear
        .View = lvwReport
        .FullRowSelect = True
        .Gridlines = True
        For i = 1 To UBound(bb)
            .ListItems.Add , , bb(i, 1)
            For a = 2 To UBound(bb, 2)
                .ListItems(.ListItems.Count).ListSubItems.Add , , bb(i, a)
            Next a
        Next i
1   End With
On Error Resume Next
With UserForm1

  A1.Visible = False
    A3.Visible = False
    A4.Visible = False
  For li = 1 To L1.ListItems.Count

UserForm1.Controls(L1.ListItems(li).ListSubItems(1).Text).Visible = True
  Next li
End With
End Sub

Quand celui ci trouvent un numero de porte exemple A1 il affiche la porte sur un des plans ou il a été localisé sur le plan a l'aide d'une frame qui à le meme nom que la porte rechercher grace acette macro

Code:
A1.Visible = False
    A3.Visible = False
    A4.Visible = False
  For li = 1 To L1.ListItems.Count

UserForm1.Controls(L1.ListItems(li).ListSubItems(1).Text).Visible = True
  Next li
End With

le probleme c'est que j'ai une 3 plan répartis sur 3 onglet portant les noms Plan1 Plan2 Plan3

pour eviter lors de l'affichage de localisation de la porte rechercher sur quelle plan il s affiche je voulais en appuyant sur le bouton localisé que l onglet plan ou se trouve ma frame qui c'est affiché soit automatiquement sélectionnez et c'est la que je n'y arrive pas.

dans un dernier cris espoire quelqu'un saurait il comment faire ceci grace a la PJ que j'ai mis qui reprend tous les aspect cité plus haut merci d'avance
 

Pièces jointes

  • Clefs V4 beta.zip
    37.5 KB · Affichages: 56
  • Clefs V4 beta.zip
    37.5 KB · Affichages: 54
  • Clefs V4 beta.zip
    37.5 KB · Affichages: 54

SSIAP2

XLDnaute Occasionnel
Re : Afficher le multipage correspondant à la frame afficher

merci laetitia pour ton aide le fichier est bien complet pour faire simple peut ont selectionnez la multipage selon la frame qui est visible je pense sa doit pas etre possible merci tout de meme
 

Discussions similaires

Statistiques des forums

Discussions
312 330
Messages
2 087 349
Membres
103 526
dernier inscrit
HEC