#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@: 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