Remplir TextBox avec données variables

Bonjour le Forum

Je vous souhaite à tous et à toutes une bonne et heureuse année, pleins de bonnes choses pour vous et vos proches

Je viens vers vous car j'ai besoin de votre aide

J'ai crée dans le fichier qui est en pièce jointe un "UserForm" multipage, cCeci afin de pouvoir faire remonter les informations contenues dans des colonnes en fonction d'une ligne choisi et de pouvoir passer à la suivante.

Ce formulaire au démarrage permet de pointer sur le fichier et la feuille de travail

La seul modification que je voudrais apporter à ma base de donnée c'est de mettre en couleur la cellule de la colonne "A" que je viens de consulter et de passer à la suivante (fermant et en réouvrant le formulaire)

15fs-vs-l2f.xlsm (47.21 Ko)

Ce que je ne sais pas faire, c'est définir la ligne à consulter en variable pour ramener les information dans "l'UserForm" puis de colorer cette ligne et passer à la suivante

Si quelqu'un pouvait jeter un œil à mon fichier

D'avance je vous remercie pour votre aide et votre disponibilité

Bonjour Eole, bonjour le forum,

Pas sûr d'avoir tout compris, une partie de ton code modifié :

Private CT As Workbook
Private OT As Worksheet

Sub UserForm_Initialize()
Me.MultiPage1.Value = 0
ListBox1.Clear 'Vider les 2 List Boxes
ListBox2.Clear 'Vider les 2 List Boxes
For Each wk In Workbooks 'Parcours tous les classeurs ouverts pour choisir sur lequel travailler dans le listBox1
    If wk.Windows(1).Visible Then ' Ne pas afficher le Fichier Personnel
        ListBox1.AddItem UCase(wk.Name) 'Afficher les Noms des Fichiers en Lettres Capitales
    End If
Next wk
End Sub

Private Sub ListBox1_Click() ' Choix du Fichier dans la ListBox1
Dim f As Worksheet

For I = 0 To ListBox1.ListCount - 1
    If ListBox1.Selected(I) = True Then Set CT = Workbooks(ListBox1.List(I)): Exit For
Next I
ListBox2.Clear
For Each f In CT.Worksheets
    ListBox2.AddItem f.Name
Next f
End Sub

Private Sub ListBox2_Click()
Dim I As Integer

For I = 0 To ListBox2.ListCount - 1
    If ListBox1.Selected(I) = True Then Set OT = CT.Worksheets(ListBox2.List(I)): Exit For
Next I

I = OT.Cells.SpecialCells(xlCellTypeLastCell).Row
colonne = "A"
While OT.Range(colonne & I).Interior.ColorIndex = xlNone
    If I = 1 Then
        MsgBox "Aucune cellule de couleur dans la colonne " & colonne 'pour gérer l'erreur si il n'y a aucune cellule de couleur
        Exit Sub
    End If
    I = I - 1
Wend

MsgBox "La dernière cellule de la colonne " & colonne & " colorée se trouve en ligne : " & I 'récupérer le numéro d'appuis dans la colonne A

OT.Cells(I, "A").Value = Me.TextBox1.Value 'Support N°
'etc...

Puis à la fin tu n'a plus qu'à colorer la cellule avec OT.Cells(I, "A").Interior.ColorIndex=...

Bonjour ThauThème

Merci pour ta réponse et ton aide

Sa plante à ce niveau dès que je click dans le "ListBox2":

I = OT.Cells.SpecialCells(xlCellTypeLastCell).Row

Erreur d'exécution '91':

Variable objet ou variable de bloc with non définie

Re,

Ça ne plante pas chez moi ?!... As-tu bien copier les deux première lignes du code fourni en haut, en premier, dans les codes de l'UserForm ?

Bonjour le Forum

Bonjour ThauThème

Merci de ton aide

Ca fonctionne, mais j'ai besoin que lorsque je sélectionne la feuille de mon classeur d'y aller dessus en visu sur mon écran et puis après avoir les information dans les "TextBox" de mon formulaire de la ligne juste en dessous de la dernière cellule colorée

pour ça j'ai inversé

OT.Cells(I, "A").Value = Me.TextBox1.Value

Par

Me.TextBox1.Value = OT.Cells(I, "A").Value

mais je ne sais pas comment faire pour sélectionner la bonne ligne en fait

Re,

C'est ce qu'il me semblait. Que tu voulais voir les données dans l'UserForm.

Puisque I correspond à la dernière ligne colorée utilise I + 1 pour la ligne en dessous

Me.TextBox1.Value = OT.Cells(I + 1, "A").Value

CT.activate pour sélectionner le bon classeur et OT.Activate pour sélectionner le bon onglet de ce classeur...

Un Grand Merci ThauThème

j'ai ce qu'il me faut

Rechercher des sujets similaires à "remplir textbox donnees variables"