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

#1 Wed 04 May 2005 16:36

Cyrilaeck
Invité

recherche code vba

De: Cyril
Bonjour,

pour creer un petit outil de selection, je suis a la recherche du code qui permet d'assigner a une Combobox (fenetre deroulante) les donnees d'un champ de ma table.

D'autre part, ayant le code popur effectuer ma selection, je cherche egalement le code qui permet de se localiser dessus

Si vous avez tout ca vs etes mon idole.

cordialement,

Cyril Aeck

PS : si vs avez des tuyaux concernant vba n'hesitez pas j suis preneur.

 

#2 Wed 04 May 2005 20:27

Mathias Dubreuil
Invité

Re: recherche code vba

Bonjour,

Selon cyrilaeck@texte-a-enlever.yahoo.fr:
> pour creer un petit outil de selection, je suis a la recherche du code qui
> permet d'assigner a une Combobox (fenetre deroulante) les donnees d'un champ
> de ma table.

desole je ne l'ai pas ca sous la main mais c'est qq chose de ce type :

Dim i as integer
Dim pTable as Itable
set pTable = ...

For i = 0 To pTable.RowCount(nothing) - 1
MaComboBox.AddItem  valeur de ma table , i
Next i

> D'autre part, ayant le code popur effectuer ma selection, je cherche
> egalement le code qui permet de se localiser dessus
>

Dim pCommandItem As ICommandItem ' nouvelle commande
'zoom sur la selection
Set pCommandItem = ThisDocument.CommandBars.Find(ArcID.Query_ZoomToSelected)
If (pCommandItem Is Nothing) Then Exit Function
pCommandItem.Execute

Cordialement
Mathias

>
> PS : si vs avez des tuyaux concernant vba n'hesitez pas j suis preneur.

http://mathias.dubreuil.free.fr/Arcobject/arcobject.php

 

#3 Wed 04 May 2005 20:27

Frederic Prally SETEGUE
Invité

Re: recherche code vba

Bonjour Cyril,
Voici un bout de code qui répondra a ta premiere question. Il est fait
de telle sorte a chaque ouverture de ton projet, la combobox va charger
les enregistrements de ton premier theme de la TOC et cela selon le
champ que tu auras défini.

Pour le reste de ta question, il faut que tu appliques une sélection a
l'entité correspondant au choix de l'utilisateur et que tu récuperes son
étendue afin de l'affecter a ta vue active. Voici l'une des démarches
que tu pourrais adopter.

Si tu as un probleme on peut voir ca lundi, car la il faut que j'y
aille.

A+

Private Function MxDocument_OpenDocument() As Boolean
'A chaque ouverture du *.mxd, la combobox charge tous les
enregistrements
'de la couche Départements (selon le champ Département)

Dim pMxDoc As IMxDocument
Set pMxDoc = ThisDocument

Dim pMap As IMap
Set pMap = pMxDoc.FocusMap

'Processus fonctionnant sur la premiere couche
Dim pLayer As ILayer
Set pLayer = pMap.Layer(0)

Dim pFLayer As IFeatureLayer
Set pFLayer = pLayer

Dim pTableLayer As IFeatureClass
Set pTableLayer = pFLayer.FeatureClass

'Sélection de tous les enregistrements
Dim pCursor As ICursor
Set pCursor = pTableLayer.Search(Nothing, False)
'Recherche le nom de la colonne
Dim i As Integer
Dim pRow As IRow
i = pTableLayer.FindField( DépARTEM0 ) 'Ici mettre le nom du =
champ
que tu veux
Set pRow = pCursor.NextRow
Do While Not pRow Is Nothing
cboChargeEnregistrement.AddItem pRow.Value(i)
Set pRow = pCursor.NextRow
'Affiche le 1er nom en haut de la cbo
cboChargeEnregistrement.EditText = cboChargeEnregistrement.Item(0)
Loop

End Function

 

#4 Thu 15 March 2012 11:24

samsoum
Juste Inscrit !
Date d'inscription: 8 Mar 2012
Messages: 1

Re: recherche code vba

Bonjour,
je veux charger mon combobox de l'ensemble des layers existant ds le ArcMap, une fois l'utulisateur choisi le layer le 2éme combobox doit etre chargé de l'ensembkle des fields correspondant une fois  l'utulisateur choisi le field le 3éme combobox doit etre chargé de l'ensemble des entités correspondants
je serais trés reconnaissante de vous m'avoir aider
Merci

Hors ligne

 

Pied de page des forums

Powered by FluxBB