USF1 et USF2

Francis31000

XLDnaute Nouveau
Bonjour a toutes et tous,
J'ai un petit souci avec mes UserForm, voila le souci:
j'ai deux feuilles contenant des données que je souhaite faire apparaitre dans des UserForm, pour la feuille1 --> UserForm1 et pour la feuille2 --> Userform2. Pour la feuille1, les données s'affichent bien dans l'UserForm1 (le tris'effectue avec une ComboBox: ComboBox1 pour la feuille1 et l'UserForm1 et ComboBox2 pour la feuille2 et l'UserForm2), mais pour la feuille2 le tri s'affiche dans la ComboBox2 mais les données ne s'affichent pas et un message d'erreur '1004' me plante, Qui pourrait me donner la soluce svp ce serait tres tres gentil . Merci par avance et dsl si j'ai été un peu longuet :unsure:
 

Francis31000

XLDnaute Nouveau
Cher CREEPY, je n'ai pas réussi a identifier les lignes de code qui affichent la feuille , j'aurai voulu , en fait, que cette feuille ne s'affiche pas car ce sont des formulaires destinés uniquement à la consultation , les utilisateurs de ces formulaires ne doivent pas avoir acces aux feuilles et eventuellement les modifier, meme par inadvertance , merci par avance pour ta réponse
 

Creepy

XLDnaute Accro
RE all,

Il n'y a qu'à demander !!

Les feuilles sont passées en Visible : Xlhidden dans le VBA et je les appelles par feuil5.activate par exemple.

Comme ca tu peux travailler sur ces feuilles même si elles n'apparaissent pas !

++

Creepy [file name=projet111_20050823194112.zip size=26388]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/projet111_20050823194112.zip[/file]
 

Pièces jointes

  • projet111_20050823194112.zip
    25.8 KB · Affichages: 24

Francis31000

XLDnaute Nouveau
Re Bonjour a toutes et tous

J'ai remanié le Code fourni généreusement par Creepy, puisque s'ajoutai un souci de doublons:

La Combo (ComboBox3) effectue un tri par une liste dans laquelle il y a des doublons (ce sont des bulletin d'hebergement (BH) dans lesquels il peut y avoir plusieurs personnes, a noter que ces memes personnes peuvent revenir sur un autre bulletin d'hebergement) .
Le souci etait que lorsque on selectionait un numero de BH comportant plusieurs enregistrements, les TextBox n'affichait que le dernier enregistrement
ex: je sélectionne le bulletin d'hebergement n°14 pour lequel il y a plusieurs personnes, seul le dernier dans la liste s'affichait.

J'ai donc utilisé la fonction ListIndex, dans ma ConboBox3 la valeur affiché est bien le numero du bulletin d'hebergement, mais avec la fonction ListIndex le tri se fait sur le numero d'enregistrement, et donc lorsque je selectionne le premier des numero 14 (par exemple) j'ai bien les valeurs correspondant au premier numero 14 qui s'affichent et non les valeurs du dernier numero 14

En esperant avoir été clair (ce qui n'est pas évident) ci joint le code remanié :

Option Explicit
Dim derligne As Integer
Dim plagelist As String

Private Sub ComboBox3_Change()

Dim Compteur, Indice As Integer
Dim Cell As Variant
Feuil5.Activate
Feuil5.Range('A7:A' & derligne).Select
Indice = ComboBox3.ListIndex + 1
For Each Cell In Selection
If Cell.Value = Indice Then
For Compteur = 1 To 13
UserForm2.Controls('Textbox' & Compteur).Text = Cell.Offset(0, Compteur).Value
Next Compteur
End If
Next Cell

End Sub
Private Sub commandbutton2_click()
Unload UserForm2
End Sub

Private Sub UserForm_Initialize()
derligne = Feuil5.Range('B65536').End(xlUp).Row
plagelist = Feuil5.Range('B7:B' & derligne).Address
ComboBox3.RowSource = 'BH!' & plagelist
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 571
Messages
2 089 775
Membres
104 272
dernier inscrit
stef606