Classe Window (Excel VBA)

Cet objet représente une fenêtre.

Les procédures principales de la classe Window sont Activate et Close

Set

Pour utiliser une variable de classe Window, elle doit d'abord être instanciée, par exemple

Dim wnd as Window
Set wnd = ActiveWindow

Les procédures suivantes peuvent être utilisés pour définir des variables de la classe Window : Application.ActiveWindow, NewWindow, Windows.Item, Workbook.NewWindow, Application.Windows, Selection et Workbook.Windows

For Each

Voici un exemple de traitement des éléments Window dans une collection

Dim wnd As Window
For Each wnd In Windows
	
Next wnd

Thèmes

Certaines procédures de cette classe ont été regroupées en thèmes et sont décrites sur des pages thématiques séparées

Print with its procedures PrintOut et PrintPreview
Column with its procedures ScrollColumn et SplitColumn
Row with its procedures ScrollRow et SplitRow

Méthodes

Les méthodes principales de la classe Window sont

Activate - Cette méthode amène la fenêtre au premier plan de l'ordre de plan.

ActiveWindow.Activate

Close - Cette méthode ferme l'objet.

Dim booClose As Boolean
booClose = ActiveWindow.Close

Autre Méthodes

ActivateNext - Active la fenêtre spécifiée, puis l'envoie à l'arrière-plan de la superposition.

ActivatePrevious - Active la fenêtre spécifiée, puis active la fenêtre située à l'arrière-plan de la superposition.

LargeScroll - Cette méthode fait défiler le contenu de la fenêtre page par page.

NewWindow - Cette méthode crée une nouvelle fenêtre ou une copie de la fenêtre spécifiée.

PointsToScreenPixelsX - Convertit une mesure horizontale de points (coordonnées de document) en pixels d’écran (coordonnées d’écran). Renvoie la mesure convertie sous la forme d'une valeur de type Long.

PointsToScreenPixelsY - Convertit une mesure verticale de points (coordonnées du document) en pixels d’écran (coordonnées d’écran). Renvoie la mesure convertie sous la forme d'une valeur de type Long.

RangeFromPoint - Renvoie l’objet de forme ou de plage qui se trouve au niveau de la paire spécifiée de coordonnées d’écran. Si aucune forme ne se trouve aux coordonnées spécifiées, cette méthode renvoie la valeur Nothing.

ScrollIntoView - Cette méthode fait défiler la fenêtre de document de sorte que le contenu d'une zone rectangulaire spécifiée s'affiche dans le coin supérieur gauche ou le coin inférieur droit de la fenêtre de document ou du volet (selon la valeur de l'argument Début).

ScrollWorkbookTabs - Cette méthode fait défiler les onglets du classeur qui se trouvent au bas de la fenêtre. Elle n'affecte pas la feuille active du classeur.

SmallScroll - Cette méthode fait défiler le contenu de la fenêtre par ligne ou par colonne.

Windows.Arrange - Cette méthode dispose les fenêtres à l'écran.

Windows.BreakSideBySide - Cette méthode met fin au mode côte à côte lorsque deux fenêtres utilisent ce mode. Elle renvoie une valeur de type Boolean qui indique la réussite ou l'échec de la méthode.

Windows.CompareSideBySideWith - Cette méthode ouvre deux fenêtres en mode côte à côte. Elle renvoie une valeur de type Boolean.

Windows.ResetPositionsSideBySide - Cette méthode rétablit les positions de deux fenêtres de feuille de calcul comparées en côte à côte.

Propriétés

ActiveCell Cette propriété renvoie un objet Range qui représente la cellule active de la fenêtre active (celle qui se trouve au premier plan) ou la fenêtre spécifiée. Si la fenêtre n'affiche aucune feuille de calcul, cette propriété échoue. En lecture seule.

Dim rngActiveCell As Range
Set rngActiveCell = ActiveWindow.ActiveCell

ActiveChart Renvoie un objet Chart qui représente le graphique actif (un graphique incorporé ou une feuille de graphique). Un graphique incorporé est considéré comme actif lorsqu'il est sélectionné ou activé. Lorsque aucun graphique n’est actif, cette propriété renvoie Nothing.

Dim chrActiveChart As Chart
Set chrActiveChart = ActiveWindow.ActiveChart

ActivePane Renvoie un objet Pane qui représente le volet actif de la fenêtre. En lecture seule.

Dim panActivePane As Pane
Set panActivePane = ActiveWindow.ActivePane

ActiveSheet Cette propriété renvoie un objet qui représente la feuille active (feuille au premier plan) dans le classeur actif ou dans la fenêtre ou le classeur spécifié(e). Renvoie Nothing si aucune feuille n’est active.

Dim wsActiveSheet As Worksheet
Set wsActiveSheet = ActiveWindow.ActiveSheet

ActiveSheetView Cette propriété renvoie un objet qui représente l'affichage de la feuille active dans la fenêtre spécifiée. En lecture seule.

Dim wsvwActiveSheetView As WorksheetView
Set wsvwActiveSheetView = ActiveWindow.ActiveSheetView

AutoFilterDateGrouping True si le filtre automatique de regroupement de dates est actuellement affiché dans la fenêtre spécifiée. Boolean (en lecture/écriture).

ActiveWindow.AutoFilterDateGrouping = True

Caption Cette propriété renvoie ou définit une valeur de type Variant qui représente le nom qui s’affiche dans la barre de titre de la fenêtre de document.

ActiveWindow.Caption =  "Consolidated Balance Sheet"

DisplayFormulas True si la fenêtre affiche des formules, False si elle affiche des valeurs. Boolean (en lecture/écriture).

ActiveWindow.DisplayFormulas = True

DisplayGridlines Cette propriété a la valeur True si le quadrillage est affiché. Boolean (en lecture/écriture).

ActiveWindow.DisplayGridlines = True

DisplayHeadings Cette propriété a la valeur True si les en-têtes de ligne et de colonne sont affichés et la valeur False s’ils sont masqués. Boolean (en lecture/écriture).

ActiveWindow.DisplayHeadings = True

DisplayHorizontalScrollBar Cette propriété a la valeur True si la barre de défilement horizontale est affichée. Boolean (en lecture/écriture).

ActiveWindow.DisplayHorizontalScrollBar = True

DisplayOutline Cette propriété a la valeur True si les symboles du plan sont affichés. Boolean (en lecture/écriture).

ActiveWindow.DisplayOutline = True

DisplayRightToLeft Cette propriété a la valeur True si la fenêtre spécifiée s'affiche de droite à gauche plutôt que de gauche à droite. Elle a la valeur False si cet objet s'affiche de gauche à droite. Boolean (en lecture seule).

ActiveWindow.DisplayRightToLeft = True

DisplayRuler True si une règle est affichée pour la fenêtre spécifiée. Boolean (en lecture/écriture).

ActiveWindow.DisplayRuler = True

DisplayVerticalScrollBar Cette propriété a la valeur True si la barre de défilement verticale est affichée. Boolean (en lecture/écriture).

ActiveWindow.DisplayVerticalScrollBar = True

DisplayWhitespace True si les espaces sont affichés. Boolean (en lecture/écriture).

ActiveWindow.DisplayWhitespace = True

DisplayWorkbookTabs Cette propriété a la valeur True si les onglets de classeur sont affichés. Boolean (en lecture/écriture).

ActiveWindow.DisplayWorkbookTabs = True

DisplayZeros Cette propriété a la valeur True si les valeurs zéro sont affichées. Boolean (en lecture/écriture).

ActiveWindow.DisplayZeros = True

EnableResize Cette propriété a la valeur True si la fenêtre peut être redimensionnée. Boolean (en lecture/écriture).

ActiveWindow.EnableResize = True

FreezePanes True si les volets fractionnés sont figés. Boolean (en lecture/écriture).

ActiveWindow.FreezePanes = True

GridlineColor Cette propriété renvoie ou définit la couleur du quadrillage avec une valeur RVB. Long (en lecture/écriture).

ActiveWindow.GridlineColor = RGB(0,0,255)'blue

GridlineColorIndex Cette propriété renvoie ou définit la couleur du quadrillage sous forme d’index dans la palette de couleurs actuelle ou sous forme de constante XlColorIndex .

ActiveWindow.GridlineColorIndex = xlColorIndexAutomatic

Height Cette propriété renvoie ou définit une valeur de type double qui représente la hauteur de la fenêtre, exprimée en points.

ActiveWindow.Height =

Hwnd Renvoie un type long qui indique le handle de fenêtre de la fenêtre spécifiée. En lecture seule.

Dim lngHwnd As Long
lngHwnd = ActiveWindow.Hwnd

Index Cette propriété renvoie une valeur de type Long qui représente le numéro d'index de l'objet au sein de la collection d'objets similaires.

Dim lngIndex As Long
lngIndex = ActiveWindow.Index

Left Cette propriété renvoie ou définit une valeur de type double qui représente la distance en pointsentre le bord gauche de la zone client et le bord gauche de la fenêtre.

ActiveWindow.Left =

OnWindow Cette propriété renvoie ou définit le nom de la procédure exécutée à chaque fois que vous activez une fenêtre. String en lecture/écriture.

ActiveWindow.OnWindow =

Panes Renvoie une collection Panes qui représente tous les volets de la fenêtre spécifiée. En lecture seule.

Dim pnsPanes As Panes
Set pnsPanes = ActiveWindow.Panes

Parent Renvoie l’objet parent pour l’objet spécifié. En lecture seule.

Dim objParent As Object
Set objParent = ActiveWindow.Parent

RangeSelection Renvoie un objet Range qui représente les cellules sélectionnées de la feuille de calcul dans la fenêtre spécifiée, même si un objet graphique est actif ou sélectionné dans la feuille de calcul. En lecture seule.

Dim rngRangeSelection As Range
Set rngRangeSelection = ActiveWindow.RangeSelection

SelectedSheets Renvoie une collection Sheets qui représente toutes les feuilles sélectionnées dans la fenêtre spécifiée. En lecture seule.

Dim shtsSelectedSheets As Sheets
Set shtsSelectedSheets = ActiveWindow.SelectedSheets

Selection Renvoie la fenêtre spécifiée pour un objet Windows .

Dim wndsSelection As Windows
Set wndsSelection = ActiveWindow.Selection

SheetViews Renvoie l’objet SheetViews, pour la fenêtre spécifiée. En lecture seule.

Dim svsSheetViews As SheetViews
Set svsSheetViews = ActiveWindow.SheetViews

Split Cette propriété a la valeur True si la fenêtre est fractionnée. Boolean (en lecture/écriture).

ActiveWindow.Split = True

SplitHorizontal Cette propriété renvoie ou définit l’emplacement du fractionnement horizontal de la fenêtre, en points. Type de données Double en lecture-écriture.

ActiveWindow.SplitHorizontal = 216

SplitVertical Cette propriété renvoie ou définit l’emplacement du fractionnement vertical de la fenêtre, en points. Type de données Double en lecture-écriture.

ActiveWindow.SplitVertical = 216

TabRatio Cette propriété renvoie ou définit le rapport entre la largeur de la zone dans laquelle se trouvent les onglets du classeur et la largeur de la barre de défilement horizontale (sous forme d'un nombre compris entre 0 (zéro) et 1 ; la valeur par défaut étant fixée à 0,6). Type de données Double en lecture-écriture.

ActiveWindow.TabRatio =

Top Cette propriété renvoie ou définit une valeur de type double qui représente la distance en pointsentre le bord supérieur de la fenêtre et le bord supérieur de la zone utilisable (sous les menus, toutes les barres d’outils ancrées en haut et la barre de formule).

ActiveWindow.Top = 100

Type Cette propriété renvoie ou définit une valeur XlWindowType qui représente le type de fenêtre.

Dim xwtType As XlWindowType
xwtType = ActiveWindow.Type

UsableHeight Renvoie la hauteur maximale de l’espace pouvant être occupé par une fenêtre dans la zone de la fenêtre d’application, exprimée en points. Type de données Double en lecture seule.

Dim dblUsableHeight As Double
dblUsableHeight = ActiveWindow.UsableHeight

UsableWidth Renvoie la largeur maximale de l’espace qu’une fenêtre peut occuper dans la zone de la fenêtre d’application, exprimée en points. Type de données Double en lecture seule.

Dim dblUsableWidth As Double
dblUsableWidth = ActiveWindow.UsableWidth

View Cette propriété renvoie ou définit l'affichage qui apparaît dans la fenêtre. En lecture/écriture XlWindowView.

ActiveWindow.View = xlNormalView

Visible Cette propriété renvoie ou définit une valeur de type Boolean qui détermine si l’objet est visible. Lecture-écriture.

ActiveWindow.Visible = True

VisibleRange Renvoie un objet Range qui représente la plage de cellules qui sont visibles dans la fenêtre ou le volet. Si une colonne ou une ligne est partiellement affichée, elle est incluse dans la plage. En lecture seule.

Dim rngVisibleRange As Range
Set rngVisibleRange = ActiveWindow.VisibleRange

Width Cette propriété renvoie ou définit une valeur de type double qui représente la largeur, en points, de la fenêtre.

ActiveWindow.Width =

WindowNumber Cette propriété renvoie le numéro de la fenêtre. Par exemple, une fenêtre nommée Classeur1. xls: 2 a 2 comme numéro de fenêtre. La plupart des fenêtres possèdent le numéro 1. Type de données Long en lecture seule.

Dim lngWindowNumber As Long
lngWindowNumber = ActiveWindow.WindowNumber

WindowState Renvoie ou définit l’état de la fenêtre. En lecture/écriture XlWindowState.

ActiveWindow.WindowState = xlMaximized

Zoom Cette propriété renvoie ou définit une valeur de type Variant qui représente la taille d'affichage de la fenêtre, en pourcentage (100 signifie que la fenêtre est affichée à sa taille normale, 200 signifie qu'elle est doublée, etc.

ActiveWindow.Zoom =

Windows.Count Cette propriété renvoie une valeur de type Long qui représente le nombre d’objets de la collection.

Dim lngCount As Long
lngCount = ActiveWindow.Selection.Count

Windows.Item Cette méthode renvoie un seul objet d'une collection.

Dim wndItem As Window
Set wndItem = ActiveWindow.Selection(Index:=1)

Windows.Parent Renvoie l’objet parent pour l’objet spécifié. En lecture seule.

Dim objParent As Object
Set objParent = ActiveWindow.Selection.Parent

Windows.SyncScrollingSideBySide Attribuez à cette propriété la valeur True pour activer le défilement synchronisé des fenêtres de documents comparés côte à côte. Attribuez-lui la valeur False pour désactiver le défilement simultané des fenêtres.

ActiveWindow.Selection.SyncScrollingSideBySide = True