Bonjour à tous,
J'ai un fichier très compliqué, mais que je peux aisément vous résumer comme ceci :
[TABLE="class: grid, width: 500, align: center"]
[TR]
[TD]Nom
[/TD]
[TD]Date
[/TD]
[TD]Explication
[/TD]
[/TR]
[TR]
[TD]Jean
[/TD]
[TD]25/10/14
[/TD]
[TD]Blablabla
[/TD]
[/TR]
[TR]
[TD]Pierre
[/TD]
[TD]26/10/14
[/TD]
[TD]Bliblibli
[/TD]
[/TR]
[TR]
[TD]Jean
[/TD]
[TD]27/10/14
[/TD]
[TD]Blobloblo
[/TD]
[/TR]
[TR]
[TD]Jean
[/TD]
[TD]28/10/14
[/TD]
[TD]Blublublu
[/TD]
[/TR]
[/TABLE]
J'ai un UF qui me met en page les lignes ne concernant qu'une seule et même personne à des fins d'impression papier (pour toute une série de bonnes raisons trop longues à expliquer ici). Concrètement, j'ai 3 Txtbox fixes qui figurent les titres de colonnes ("Nom", "Date" et "Explication", donc) sous lesquelles je génère autant de Txtbox figurant les lignes de colonnes que nécessaire (3 si je choisis "Jean", 1 si je choisis "Pierre" dans l'exemple).
En résume, au niveau de la mise en page, je reproduis exactement le tableau ci-dessus. Là, pas de souci.
Là où je coince et j'en appelle à vous, c'est pour remplir ces Textbox avec les données de chaque ligne. En effet, jusqu'à présent j'arrive bien à générer tout ça, mais la valeur que je rentre est toujours celle de la 1ère ligne rencontrée. Dans l'exemple ci-dessus, voici ce que me rend mon UF si je choisis Jean :
[TABLE="class: grid, width: 500, align: center"]
[TR]
[TD]Nom
[/TD]
[TD]Date
[/TD]
[TD]Explication
[/TD]
[/TR]
[TR]
[TD]Jean
[/TD]
[TD]25/10/14
[/TD]
[TD]Blablabla
[/TD]
[/TR]
[TR]
[TD]Jean
[/TD]
[TD]25/10/14
[/TD]
[TD]Blablabla
[/TD]
[/TR]
[TR]
[TD]Jean
[/TD]
[TD]25/10/14
[/TD]
[TD]Blablabla
[/TD]
[/TR]
[/TABLE]
Voici le code que j'utilise pour ce faire, copié-collé du Net et adapté :
	
	
	
	
	
		
Comment puis-je faire en sorte que, pour chaque ligne de Textbox qu'il crée, il aille chercher la prochaine occurrence du nom recherché? 🙂
Merci à tous!
	
		
			
		
		
	
				
			J'ai un fichier très compliqué, mais que je peux aisément vous résumer comme ceci :
[TABLE="class: grid, width: 500, align: center"]
[TR]
[TD]Nom
[/TD]
[TD]Date
[/TD]
[TD]Explication
[/TD]
[/TR]
[TR]
[TD]Jean
[/TD]
[TD]25/10/14
[/TD]
[TD]Blablabla
[/TD]
[/TR]
[TR]
[TD]Pierre
[/TD]
[TD]26/10/14
[/TD]
[TD]Bliblibli
[/TD]
[/TR]
[TR]
[TD]Jean
[/TD]
[TD]27/10/14
[/TD]
[TD]Blobloblo
[/TD]
[/TR]
[TR]
[TD]Jean
[/TD]
[TD]28/10/14
[/TD]
[TD]Blublublu
[/TD]
[/TR]
[/TABLE]
J'ai un UF qui me met en page les lignes ne concernant qu'une seule et même personne à des fins d'impression papier (pour toute une série de bonnes raisons trop longues à expliquer ici). Concrètement, j'ai 3 Txtbox fixes qui figurent les titres de colonnes ("Nom", "Date" et "Explication", donc) sous lesquelles je génère autant de Txtbox figurant les lignes de colonnes que nécessaire (3 si je choisis "Jean", 1 si je choisis "Pierre" dans l'exemple).
En résume, au niveau de la mise en page, je reproduis exactement le tableau ci-dessus. Là, pas de souci.
Là où je coince et j'en appelle à vous, c'est pour remplir ces Textbox avec les données de chaque ligne. En effet, jusqu'à présent j'arrive bien à générer tout ça, mais la valeur que je rentre est toujours celle de la 1ère ligne rencontrée. Dans l'exemple ci-dessus, voici ce que me rend mon UF si je choisis Jean :
[TABLE="class: grid, width: 500, align: center"]
[TR]
[TD]Nom
[/TD]
[TD]Date
[/TD]
[TD]Explication
[/TD]
[/TR]
[TR]
[TD]Jean
[/TD]
[TD]25/10/14
[/TD]
[TD]Blablabla
[/TD]
[/TR]
[TR]
[TD]Jean
[/TD]
[TD]25/10/14
[/TD]
[TD]Blablabla
[/TD]
[/TR]
[TR]
[TD]Jean
[/TD]
[TD]25/10/14
[/TD]
[TD]Blablabla
[/TD]
[/TR]
[/TABLE]
Voici le code que j'utilise pour ce faire, copié-collé du Net et adapté :
		Code:
	
	
	Private Sub CbxEleve_Change()
'Procédure de création et remplissage des textbox
        Dim Obj As Control
        Dim i As Integer
        Dim PosX As Long
        Set Collect = New Collection
            'boucle pour la création des TextBox
                For i = 1 To Range("DataGen!AZ" & lign).Value 'DataGenAZ représente le nombre de lignes pour "Jean"
                    Set Obj = Me.Controls.Add("forms.TextBox.1")
                        With Obj
                            .Name = "TxtDiscDate" & i
                            .Object.Value = Range("Histo!F" & lign).Value 'Histo!F représente la colonne de la date, "lign" la variable contenant la ligne sélectionnée, soit la première contenant le nom recherché
                        End With
                    Set Obj = Me.Controls.Add("forms.TextBox.1")
                        With Obj
                            .Name = "TxtDiscFaits" & i
                            .Object.Value = Range("Histo!J" & lign).Value 'Histo!J représente la colonne contenant les explications
                        End With
	Comment puis-je faire en sorte que, pour chaque ligne de Textbox qu'il crée, il aille chercher la prochaine occurrence du nom recherché? 🙂
Merci à tous!