maval
XLDnaute Barbatruc
Bonjour
J'ai sur un Usf un multipage pour retrouver "Etat civil, la Biographie, la filmographie et récompenses des acteurs".
J'ai un code qui fonctionne très bien pour "Etat civil et la filmographie "mais pas pour la Biographie et les récompenses, toutes les données se trouve sur le classeur, après avoir passe des heures a chercher je n'ai rien trouver.
Mon code est celui-ci:
Ma recherche et de trouver le code pour faire fonctionner "la filmographie et récompenses".
Je vous remercie d'avance
J'ai sur un Usf un multipage pour retrouver "Etat civil, la Biographie, la filmographie et récompenses des acteurs".
J'ai un code qui fonctionne très bien pour "Etat civil et la filmographie "mais pas pour la Biographie et les récompenses, toutes les données se trouve sur le classeur, après avoir passe des heures a chercher je n'ai rien trouver.
Mon code est celui-ci:
Code:
Private Sub UserForm_Initialize()
Me.CheckBox1.Caption = "Visible"
Me.Frame1.Visible = False
Me.MultiPage1.Visible = False
Dim LigF As Long
Dim Rep, NomFic, sheetsUse As String
Dim i, j As Integer
Dim tableau() As String
If choose Then
sheetsUse = "BdD Noms"
Rep = "J:\Réalisateur\"
Else
sheetsUse = "BdD Acteurs"
Rep = "J:\acteur\"
End If
' Trouver la ligne correspondante au réalisateur
' Avec la feuille contenant les noms
With Sheets(sheetsUse)
' Dans la colonne
With .Columns("B:B")
' En cas d'erreur : nom non trouvée, n continue
On Error Resume Next
' Trouver la ligne contenant le nom
LigF = 1 ' initialiser
LigF = .Find(What:=NomRéalisateur, LookIn:=xlValues, LookAt:=xlWhole, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False).Row
' Suivi des erreurs normal
On Error GoTo 0
End With
' Si pas de ligne trouvée
If LigF = 1 Then Exit Sub
LigF = LigF
' sinon
Me.Label5.Caption = NomRéalisateur
Me.TextBox3.Value = .Range("A" & LigF).Value
Me.TextBox4.Value = .Range("B" & LigF).Value
Me.TextBox5.Value = .Range("C" & LigF).Value
Me.TextBox6.Value = .Range("D" & LigF).Value
Me.TextBox7.Value = .Range("E" & LigF).Value
Me.TextBox8.Value = .Range("F" & LigF).Value
If .Range("G" & LigF).Value <> "" Then
Me.TextBox9.Value = .Range("G" & LigF).Value
Else
Me.TextBox9.Value = "Non décédé"
End If
End With
NomFic = Label5.Caption
Image1.Visible = True
If Dir(Rep & NomFic & ".jpg") <> "" Then
Image1.Picture = LoadPicture(Rep & NomFic & ".jpg")
Else
Image1.Picture = LoadPicture: End If
Dim ObjAnnee, ObjFilm As Control
Dim Cl As Classe1
Dim f, g As Integer
g = 1
Set Collect = New Collection
LigF = LigF
With Sheets("Filmographie")
For i = 2 To 100
If .Cells(LigF, i) <> "" Then
tableau = Split(.Cells(LigF, i), ",")
For j = 0 To UBound(tableau)
Set ObjAnnee = Me.MultiPage1.Pages(2).Controls.Add("forms.TextBox.1") 'Textbox gauche
With ObjAnnee
.Name = "TextAnnee" & g
.Left = 12
.Top = 1 + (g * 1) * 25
.Width = 60
.Height = 18
.Text = Sheets("Filmographie").Cells(1, i)
.SpecialEffect = 0
.BackColor = &H8000000F
'.ForeColor = &HFFFFFF
End With
Set Cl = New Classe1
Set Cl.TextBox = ObjAnnee
Collect.Add Cl
Set ObjFilm = Me.MultiPage1.Pages(2).Controls.Add("forms.TextBox.1") ' Textbox droite
With ObjFilm
.Name = "TextFilm" & g
.Left = 90
.Top = 1 + (g * 1) * 25
.Width = 160
.Height = 18
.Text = tableau(j)
.SpecialEffect = 0
.BackColor = &H8000000F
'.ForeColor = &HFFFFFF
End With
Set Cl = New Classe1
Set Cl.TextBox = ObjFilm
Collect.Add Cl
g = g + 1
Next
End If
Next
If g > 10 Then
MultiPage1.Pages(2).ScrollHeight = 27 * g
End If
End With
End Sub
Je vous remercie d'avance
Pièces jointes
Dernière édition: