VBA avec

Avec déclaration dans Excel VBA

L'instruction With est utilisée dans VBA pour accéder à toutes les propriétés et méthodes d'un objet mentionné. Nous devons d'abord fournir l'objet VBA auquel nous nous référons, puis fermer l'instruction With avec End With , puis à l'intérieur de cette instruction, nous pouvons effectuer toutes les modifications de propriété et les méthodes de l'objet mentionné.

Vous trouverez ci-dessous la syntaxe de With Statement dans VBA.

 Avec [OBJET] [Code… Que faut-il faire?] Terminer par 

L'objet n'est rien d'autre qu'une plage de cellules ou de cellules auxquelles nous faisons référence, puis nous pouvons modifier les propriétés et exécuter toutes les méthodes associées à cette ou ces cellules spécifiques.

Comment utiliser avec Statement dans Excel VBA?

Vous trouverez ci-dessous quelques exemples d'utilisation de With Statement dans Excel VBA.

Vous pouvez télécharger ce modèle VBA avec Excel ici - VBA avec modèle Excel

Exemple 1

Supposons que vous ayez une certaine valeur dans la cellule A1, j'ai entré le texte comme «Excel VBA» dans la cellule A1.

Maintenant, pour cette cellule, je dois effectuer certaines tâches, c'est-à-dire le formatage dans Excel.

Je veux changer la taille de la police, le nom de la police et la couleur intérieure, insérer une bordure, etc… Typiquement, ce que nous faisons est de référencer d'abord la cellule en utilisant l'objet VBA RANGE.

Code:

 Sub With_Example1 () Range ("A1") End Sub 

Maintenant, pour changer la taille de la police, nous accédons à la propriété «font» de cette cellule.

Sous la propriété FONT, nous accédons à la propriété Size et entrons size en mettant un signe égal.

Code:

 Sub With_Example1 () Range ("A1"). Font.Size = 15 End Sub 

De la même manière, nous effectuons d'autres tâches de formatage comme indiqué ci-dessous.

Code:

 Sub With_Example1 () Range ("A1"). Font.Size = 15 Range ("A1"). Font.Name = "Verdana" Range ("A1"). Interior.Color = vbYellow Range ("A1"). Bordures .LineStyle = xlContinuous End Sub 

Cela fera toutes les tâches mentionnées, mais si vous regardez le code pour effectuer chaque activité de formatage, nous avons fourni l'adresse de cellule à chaque fois, cela rend le code long et prend du temps.

Nous allons maintenant utiliser l'instruction VBA With pour réduire l'entrée d'adresse de cellule à chaque fois. Ouvrez l'instruction WITH dans Excel VBA et indiquez l'adresse de la cellule.

Code:

 Sub With_Example1 () With Range ("A1") End Sub 

À l'intérieur de l'instruction With, placez un point pour voir toutes les propriétés et méthodes de la cellule A1.

Maintenant, la première activité de mise en forme change la taille de la police, alors accédez à FONT et sous cette propriété SIZE.

Code:

 Sub With_Example1 () With Range ("A1") .Font.Size = 15 End Sub 

De même, fournissez d'autres codes de formatage et fermez VBA With Statement.

Code:

 Sub With_Example1 () With Range ("A1") .Font.Size = 15 .Font.Name = "Verdana" .Interior.Color = vbYellow .Borders.LineStyle = xlContinuous End With End Sub 

Exécutez le code pour voir toute la mise en forme dans l'objet mentionné, c'est-à-dire la cellule A1.

Donc, toute la mise en forme appliquée à la cellule. Regardez comme cette technique est cool.

Exemple # 2

Par exemple, si vous souhaitez modifier toutes les propriétés liées à la police, vous pouvez mentionner la cellule et la propriété FONT.

Code:

 Sub With_Example2 () With Range ("A1"). Police End With End Sub 

À l'intérieur de l'instruction vba With, nous pouvons voir la liste IntelliSense, elle affichera uniquement les propriétés et les méthodes liées à la propriété FONT.

Nous pouvons maintenant effectuer n'importe quel ensemble d'activités avec cela.

Code:

 Sub With_Example2 () With Range ("A1"). Font .Bold = True 'La police sera en gras .Color = vbAlias' La couleur de la police sera Alias ​​.Italic = True 'La police sera de style italique .Size = 20' be 20 .Underline = True 'La police sera soulignée End With End Sub 

Le résultat de ceci sera comme indiqué ci-dessous.

Exemple # 3

Le code ci-dessous accédera uniquement aux propriétés liées aux bordures de cellule.

Code:

 Sub With_Example3 () With Range ("B2"). Borders .Color = vbRed 'La couleur de la bordure sera rouge .LineStyle = xlContinuous' Full border .Weight = xlThick 'Thick border End With End Sub 

Le résultat de ce code est le suivant.

Choses à retenir

  • L'instruction With est utilisée pour minimiser le code.
  • Nous devons d'abord fournir un objet pour l'instruction With.
  • Une fois l'objet spécifique fourni, nous ne pouvons accéder qu'aux propriétés et méthodes de cet objet.