Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Thu 04 November 2004 11:10

Gdoukhan
Invité

enumerateur en vba

Bonjour,
Je developpe un script en vba et j'ai besoin d'utiliser un enumerateur d'enregistrements sur une table (interface Ienumrow).
Voici le bout de script que j'ai ecrit:

Code:

Dim pselrow As IRow
Set pselrow = pTable.GetRow(2883)
Dim penumtable As IEnumRow
Set penumtable = pselrow

ptable est une ITable qui a ete initialisee
GetRow(2883) renvoie le premier enregistrement de ma table.
Mais lorsque j'execute j'ai une incomptabilite de type entre penumtable et pselrow. J'ai essaye d'autres methodes pour initaliser penumtable mais aucune ne marche.
Quelqu'un pourrait-il m'expliquer comment faire?
Merci de vos reponses.

Guillaume Doukhan

 

#2 Thu 04 November 2004 11:42

Olivier GUYOT-DE-LA-POMMERAYE
Invité

Re: enumerateur en vba

Bonjour,

C'est parfaitement normal vous tentez de mettre un enregistrement dans une ennumeration de x enregistrements.
Je ne comprends pourquoi vous chargez l'enregistrement 2883 ?

Vous voulez avoir seulement celui ci ou bien une ennumeration de plusieurs enregistrements ? et lesquels ?
Que cherchez vous exactement a faire ?

Cordialement,

Olivier Guyot de La Pommeraye

 

#3 Thu 04 November 2004 18:07

Gdoukhan
Invité

Re: enumerateur en vba

De: guillaume doukhan
En fait l'enregistrement 2883 est le premier de ma table (la cle ne commence pas a 1).
Je souhaite parcourir l'ensemble de la table. Pas plus complique que ca.

Merci.

 

#4 Thu 04 November 2004 18:07

Olivier GUYOT-DE-LA-POMMERAYE
Invité

Re: enumerateur en vba

Bonjour,

Alors c'est tres simple voici le code permettant de parcourir votre table complete :

Code:

    Dim oCursor As ICursor
    Dim oRow As IRow

    'Instancie le curseur
    Set oCursor = oTable.Search(Nothing, False)
    Set oRow = oCursor.NextRow

    'Parcours des Enregistrements
    While Not oRow Is Nothing
        'ACTION
        Set oRow = oCursor.NextRow
    Wend

Cordialement,

Olivier Guyot de La Pommeraye

 

#5 Thu 04 November 2004 18:08

Guillaume Doukhan
Invité

Re: enumerateur en vba

Merci beaucoup pour votre reponse.
Effectivement ca marche.

Guillaume Doukhan

 

Pied de page des forums

Powered by FluxBB