Alimentation d'un SpreadSheets depuis une ListBox
Bonjour le Forum,
J'ai une petite question à vous soumettre. Je suis en pleine programmation d'une application qui permet - en gros - de faire un suivi de "Fiches Anomalie".
Je bloque sur la partie affichage du tableau de données.
Pour exposer mon souci voici quelques infos:
ma feuille "Données" contient les données
mon UserForm MultiPage contient un onglet "Visualisation"
l'utilisateur peut faire un choix sur les informations qu'il souhaite visualiser:
soit:
- les RefPiece (Listebox à choix multiple) = MultiPage.ListeRefPiece
- La ligne le production = Multipage.Ligne
- la machine de production = Multipage.Machine
En fonction des choix de l'utilisateur je souhaite remplir ma SpreadSheets avec les lignes correspondentes de ma feuille "Données". Tout les choix ne sont pas obligatoirement selectionnés. Je commence juste par programmer le code dans le cas suivant:
l'utilisateur souhaite voir les anomalies pour certaines références de pièces, sans indiquer de Ligne ni de Machine.
Tout d'abords est ce que cela est possible?
J'ai commencer mon code ainsi:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| Dim Table As Variant
Dim x As String 'adresses des cellules du tableau
Dim Cellules As Range 'cellules utilisées
Worksheets("Données").Activate
With UserForm.MultiPage
'si pas de paramètre séléctionné: message d'erreur
If .ListeRefPiece = "" And .Ligne = "" And .Machine = "" Then
MsgBox "Faire un choix dans les paramètres d'affichages."
Exit Sub
End If
'selection de ref piece uniquement
If .ListeRefPiece <> "" And .Ligne = "" And .Machine = "" Then |
J'ai trouvé sur le site les info suivantes:
Code:
1 2 3 4 5 6 7 8 9 10
| '¤¤¤¤¤¤¤¤¤¤¤¤¤ affichage de la table complète:
' Dim Table As Variant
' Dim x As String
' Worksheets("Données").Activate
'
' x = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Address
'
' Table = Range("A1:" & x)
' Tableau.ActiveSheet.Range("A1:" & x) = Table |
Et je souhaiterais la modifier pour ne selectionner comme plage que les lignes correpsondant au choix de l'utilisateur.
Comment puis je mettre dans la variable "x" la plage de données voulu?
La Boucle For Each peut elle etre utilisée ainsi?
Code:
For Each .ListeRefPiece.Value In .ListeRefPiece
Merci beaucoup pour votre aide!