#1 Fri 07 March 2008 11:35
- chris
- Participant actif
- Lieu: florensac
- Date d'inscription: 7 Sep 2005
- Messages: 56
fermer les fenêtres des tables
Bonjour,
A l'ouverture d'un document ArcMap, il arrive souvent que de nombreuses tables attributaires s'ouvrent intempestivement. On a beau fermer le document en l'enregistrant sans table ouverte, lors de sa réouverture les tables réapparaissent.
Quelqu'un aurait-il un code vba pour fermer ces tables ?
Par avance merci...
Christelle VALLS
Géomaticienne
Hors ligne
#2 Fri 07 March 2008 14:06
- nicolas valls
- Participant assidu
- Date d'inscription: 28 Oct 2005
- Messages: 154
Re: fermer les fenêtres des tables
Voila pour fermer les tables attributaires ouvertes :
Code:
Private Sub fermer_tables_Click()
Dim mondoc As IMxDocument
Dim macouche As ILayer
Dim table_attributaire_2 As ITableWindow2
Dim table_attributaire As ITableWindow
Dim i As Integer
Dim matable As IStandaloneTable, mestables As IStandaloneTableCollection, macarte As IMap
Set mondoc = ThisDocument
Set macarte = mondoc.Maps.Item(0)
Set mestables = macarte
Set table_attributaire_2 = New TableWindow
'pour les tables carto
For i = 0 To macarte.LayerCount - 1
Set macouche = macarte.Layer(i)
Set table_attributaire = table_attributaire_2.FindViaLayer(macouche)
' si la table n'a pas encore été ouverte dans arcmap il faut la créer
If table_attributaire Is Nothing Then
Set table_attributaire_2.Layer = macouche
table_attributaire_2.TableSelectionAction = esriSelectFeatures
table_attributaire_2.ShowSelected = False
table_attributaire_2.ShowAliasNamesInColumnHeadings = True
Set table_attributaire_2.Application = Application
Else
Set table_attributaire_2 = table_attributaire
End If
If table_attributaire_2.IsVisible Then table_attributaire_2.Show False
Next i
'Pour les tables non carto
For i = 0 To mestables.StandaloneTableCount - 1
Set matable = mestables.StandaloneTable(i)
Set table_attributaire = table_attributaire_2.FindViaStandaloneTable(matable)
If table_attributaire Is Nothing Then
Set table_attributaire_2.StandaloneTable = matable
table_attributaire_2.TableSelectionAction = esriSelectFeatures
table_attributaire_2.ShowSelected = False
table_attributaire_2.ShowAliasNamesInColumnHeadings = True
Set table_attributaire_2.Application = Application
Else
Set table_attributaire_2 = table_attributaire
End If
If table_attributaire_2.IsVisible Then table_attributaire_2.FindViaStandaloneTable(matable).Show False
Next i
End Subchez moi ça marche donc....
Bonne journée
Dernière modification par nicolas valls (Fri 07 March 2008 15:27)
Hors ligne


