Liste à plusieurs colonnes vb6 combobox, listbox... [Résolu]

AndreBourvil 15 Messages postés dimanche 27 juillet 2003Date d'inscription 1 mars 2013 Dernière intervention - 30 mars 2009 à 13:53 - Dernière réponse : AndreBourvil 15 Messages postés dimanche 27 juillet 2003Date d'inscription 1 mars 2013 Dernière intervention
- 30 mars 2009 à 20:57
Bonjour,

J'essaie de faire (en plus d'une recherche par nom) une liste multiple composée des nom et prénom du client ainsi que du numéro de facture comme ci-après:  DUPONT Henri Facture N° 142

L'ajout, la suppression, la modification ainsi que la lecture se fait bien losrque ma liste est limitée à 1 seul champ (nom ou prénom par exemple) mais lors-ce-qu'elle est multiple, à l'initialisation (plus bas) les valeurs de tous mes champs concernant le client et  la facture n'apparaissent pas (comme s'il y avait un  problème d'indexation)
Par contre, ma liste affiche bien les champs demandés:     liste_nom.AddItem Trim(VarEnreg.ChampNom) '& " " &
Trim(VarEnreg.ChampPrénom) & " " & "-" & " " & "Facture
N°" & " " & Trim(NumEnreg) (DUPONT Henri Facture N° 142)

Private Sub btn_ajouter_Click()
Dim p As Integer
Open App.Path & "\FACTURES.tba" For Random Access Read Write As #1 Len = Len(VarEnreg)

NumRows = LOF(1) \ Len(VarEnreg)
                         
If txt_nom = "" Then
            frm_aide.Show
            frm_aide.lbl_aide_titre.Caption = "NOUVELLE FACTURE"
            frm_aide.lbl_aide.Caption = "Vous devez renseigner le nom du client !"
Else
If txt_adresse = "" Then
            frm_aide.Show
            frm_aide.lbl_aide_titre.Caption = "NOUVELLE FACTURE"
            frm_aide.lbl_aide.Caption = "Vous devez renseigner l'adresse du client !"
Else
If txt_ville = "" Then
            frm_aide.Show
            frm_aide.lbl_aide_titre.Caption = "NOUVELLE FACTURE"
            frm_aide.lbl_aide.Caption = "Vous devez renseigner la ville du client !"
Else
If txt_code_postal = "" Then
            frm_aide.Show
            frm_aide.lbl_aide_titre.Caption = "NOUVELLE FACTURE"
            frm_aide.lbl_aide.Caption = "Vous devez renseigner le code postal du client !"
Else

If txt_forme_juridique = "" Then
            frm_aide.Show
            frm_aide.lbl_aide_titre.Caption = "NOUVELLE FACTURE"
            frm_aide.lbl_aide.Caption = "Vous devez renseigner la forme juridique du client !"

Else

                            For p = 0 To 16
                                    VarEnreg.ChampMontant(p) = txt_montant(p)
                                    VarEnreg.ChampQuantite(p) = txt_quantite(p)
                                    VarEnreg.ChampPrixUnitaire(p) = txt_prix_unitaire(p)
                                    VarEnreg.Champ_ProduitPrestation(p) =                   txt_poduit_prestation(p)
                            Next p
                                    VarEnreg.ChampDate = lbl_date
                                    VarEnreg.ChampTVA = txt_tva
                                    VarEnreg.ChampMontantHT = txt_total_hors_taxe
                                    VarEnreg.ChampTotalChampTVA = txt_total_tva
                                    VarEnreg.ChampMontantTTC = txt_total_ttc
                     
                                    VarEnreg.ChampPrénom = txt_prenom
                                    VarEnreg.ChampAdresse = txt_adresse
                                    VarEnreg.ChampVille = txt_ville
                                    VarEnreg.ChampCodePostal = txt_code_postal
                                    VarEnreg.ChampEmail = txt_email
                                    VarEnreg.ChampNom = txt_nom
                                    VarEnreg.ChampPortable = txt_portable
                                    VarEnreg.ChampTelephone = txt_telephone
                                    VarEnreg.ChampFormeJuridique = txt_forme_juridique
                                    VarEnreg.ChampRemarque = txt_remarque
                                      
                                    VarEnreg.ChampQte = lbl_quantite
                                    VarEnreg.ChampPrix = p
                                    VarEnreg.ChampMontantTHT = lbl_montant_hors_taxe
                                    VarEnreg.ProduitPrestation = lbl_produit_prestation
                                    'Put c'est pour ajouter les infos txt_nom, txt_prenom, ... dans le fichier #1
                                    Put #1, NumRows + 1, VarEnreg

                                    txt_nom = ""
                                    txt_prenom = ""
                                    txt_adresse = ""
                                    txt_ville = ""
                                    txt_code_postal = ""
                                    txt_telephone = ""
                                    txt_portable = ""
                                    txt_email = ""
                                    txt_forme_juridique = ""
                                    txt_numero = ""
                                    txt_remarque = ""
                                    txt_code_client = ""

                            For g = 0 To 16
                                    txt_montant(g) = ""
                                    txt_quantite(g) = ""
                                    txt_prix_unitaire(g) = ""
                                    txt_poduit_prestation(g) = ""
                            Next g
                                    lbl_date.Caption = ""
                                    txt_total_hors_taxe.Text = ""
                                    txt_tva.Text = ""
                                    txt_total_tva.Text = ""
                                    txt_total_ttc.Text = ""
                                    txt_nom.SetFocus
    
    
            frm_aide.Show
            frm_aide.lbl_aide_titre.Caption = "ENREGISTREMENT"
            frm_aide.lbl_aide.Caption = "La facture a bien été enregistrée !"

    End If
    End If
    End If
    End If
    End If

Close #1

Open App.Path & "\FACTURES.tba" For Random Access Read As #1 Len = Len(VarEnreg)

NumRows = LOF(1) \ Len(VarEnreg)
liste_nom.Clear
For i = 1 To NumRows
Get #1, i, VarEnreg
    liste_nom.AddItem Trim(VarEnreg.ChampNom) '& " " & Trim(VarEnreg.ChampPrénom) & " " & "-" & " " & "Facture N°" & " " & Trim(NumEnreg)
Next i

For i = 1 To NumRows
Get #1, i, VarEnreg
Next i
Close #1

End Sub

Je vous remercie de m'éclairer s'il vous plaît.

@pluche

Nadia
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 30 mars 2009 à 14:14
3
Merci
pourquoi ne pas utiliser un ListView ?

c'est simple a utiliser, et adapté a ton cas

Merci Renfield 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 68 internautes ce mois-ci

Commenter la réponse de Renfield
AndreBourvil 15 Messages postés dimanche 27 juillet 2003Date d'inscription 1 mars 2013 Dernière intervention - 30 mars 2009 à 20:57
0
Merci
Bonsoir,

Merci pour ta réponse, je vais essayer. A vrai dire je croyais que le ListView était "réservé" au objets mais pas pour le texte.

@+

Nadia
Commenter la réponse de AndreBourvil

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.