Valeur VBA - Comment utiliser la fonction de valeur Excel VBA?

Table des matières:

Anonim

Valeur VBA

Le voyage de VBA commence par savoir comment les valeurs sont stockées dans les cellules. Par conséquent, connaître la fonction VALUE sous VBA est plus important. Après avoir étudié la propriété VBA VALUE, vous pourrez savoir comment les valeurs sont stockées sous VBA. Cet article explique tous les types de fonction VALUE dans VBA, comme la façon dont la valeur est stockée dans les cellules, à chaud pour définir la valeur, comment insérer la valeur et bien d'autres.

Comment utiliser la fonction de valeur Excel VBA?

Nous allons apprendre à utiliser la fonction VBA Value avec quelques exemples dans Excel.

Vous pouvez télécharger ce modèle Excel de valeur VBA ici - Modèle Excel de valeur VBA

Exemple # 1 - Définir la valeur de cellule à l'aide de la fonction Range.Value

Réglage de la valeur de cellule / s à l'aide de Range. La fonction de valeur se compose en gros de deux étapes importantes:

  • Définition de la plage où vous souhaitez que la valeur soit stockée.
  • Affectation d'une valeur à l'ensemble de plages.

Suivez les étapes ci-dessous pour définir la valeur dans Excel VBA:

Étape 1: insérez un nouveau module sous Visual Basic Editor (VBE).

Étape 2: Définissez une nouvelle sous-procédure sous le module inséré afin qu'une macro puisse y être stockée.

Code:

 Sub VBA_Value_Ex1 () End Sub 

Étape 3: Définissez une nouvelle variable comme une plage qui peut être utilisée pour définir une plage où vous souhaitez stocker la valeur.

Code:

 Sub VBA_Value_Ex1 () Dim setValue_Var As Range End Sub 

Étape 4: à l'aide de la fonction VBA RANGE, affectez les cellules de la plage à une variable définie à l'aide de l'opérateur d'affectation.

Code:

 Sub VBA_Value_Ex1 () Dim setValue_Var As Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1") End Sub 

Étape 5: Maintenant, utilisez la propriété Range.Value pour pouvoir attribuer une valeur à la plage définie. Tapez le nom de variable "setValue_Var" sous lequel la plage est définie.

 Sub VBA_Value_Ex1 () Dim setValue_Var As Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1") setValue_Var End Sub 

Étape 6: Placez un point (.) Après la variable pour pouvoir sélectionner la liste IntelliSense des fonctions disponibles pour cette variable de plage définie.

Code:

 Sub VBA_Value_Ex1 () Dim setValue_Var As Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1") setValue_Var. End Sub 

Étape 7: Faites glisser vers le bas dans la liste et sélectionnez la fonction «Valeur» pour stocker la valeur sous cette variable de plage.

Code:

 Sub VBA_Value_Ex1 () Dim setValue_Var As Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1") setValue_Var.Value End Sub Sub 

Étape 8: Attribuez «Bienvenue dans le monde de VBA!» Comme valeur à cette plage à l'aide de l'opérateur d'affectation.

Code:

 Sub VBA_Value_Ex1 () Dim setValue_Var As Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1") setValue_Var.Value = "Bienvenue dans le monde de VBA!" End Sub 

Étape 9: Nous avons terminé avec la partie codage. Exécutez ce code en appuyant sur F5 ou sur le bouton Exécuter sous VBE et voyez la sortie.

Vous pouvez également affecter la valeur à une plage de cellules. Tout ce que vous avez à faire est de définir la plage de sortie, vous allez donner un tableau unidimensionnel au lieu d'une référence de cellule unique.

Étape 10: Dans le même code ci-dessus, modifiez la plage de «A1» à «A1: A5».

Code:

 Sub VBA_Value_Ex1 () Dim setValue_Var As Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1: A5") setValue_Var.Value = "Bienvenue dans le monde de VBA!" End Sub 

Étape 11: Appuyez sur F5 ou sur le bouton Exécuter et voyez la sortie.

Exemple # 2 - Définir la valeur d'une cellule à l'aide de la propriété de cellules VBA

Il s'agit d'une autre méthode pour définir la valeur de cellule sous VBA. Contrairement à la fonction RANGE, les cellules n'en ont même pas besoin. Opérateur de valeur pour pouvoir définir la valeur de la ou des cellules spécifiques.

Suivez les étapes ci-dessous pour définir la valeur de cellule dans Excel VBA:

Étape 1: insérez un nouveau module sous VBE où vous pouvez commencer à écrire votre nouveau morceau de code.

Étape 2: Ajoutez une nouvelle sous-procédure sous le module inséré, où vous pouvez stocker votre code de macro dans.

Code:

 Sub VBA_Value_Ex2 () End Sub 

Étape 3: Commencez à taper thisWorkbook.Worksheet pour accéder à la feuille nommée "Setting_Cell_Value_2".

Code:

 Sub VBA_Value_Ex2 () ThisWorkbook.worksheets End Sub 

Étape 4: mentionnez le nom de la feuille entre parenthèses entre guillemets.

Code:

 Sub VBA_Value_Ex2 () ThisWorkbook.Worksheets ("Setting_Cell_Value_2") End Sub 

Étape 5 : Utilisez la propriété .Cells pour définir la plage de cellules à partir de la feuille Excel donnée.

Code:

 Sub VBA_Value_Ex2 () ThisWorkbook.Worksheets ("Setting_Cell_Value_2"). Cells (1, 1) End Sub 

Le premier argument de la propriété Cells représente les lignes et le deuxième argument représente la colonne. Par conséquent, Cellules (1, 1) signifie cellule associée à la première ligne et à la première colonne de la feuille "Setting_Cell_Value_2".

Étape 6: Maintenant, avec l'aide de l'opérateur d'affectation, affectez une valeur à cet ensemble de cellules.

Code:

 Sub VBA_Value_Ex2 () ThisWorkbook.Worksheets ("Setting_Cell_Value_2"). Cells (1, 1) = "VBA is Flexible." End Sub 

Jetez un œil que nous n'avons pas besoin de la fonction .Value que nous devons utiliser lors de la définition de la valeur à l'aide de la fonction Range. La méthode Cells n'a pas de telles options IntelliSense.

Étape 7: Appuyez sur F5 ou sur le bouton Exécuter pour exécuter ce code et voir la sortie. Vous verrez une sortie comme indiqué dans la capture d'écran ci-dessous.

Exemple # 3 - Obtenir la valeur d'une cellule dans VBA

Jusqu'à présent, dans deux exemples, nous avons vu comment définir la valeur d'une cellule ou d'une plage de cellules. Supposons maintenant qu'un cas soit exactement inverse, nous devons obtenir la valeur attribuée à une cellule particulière d'une feuille Excel. Comment pouvons-nous obtenir cela? Passons en revue un guide étape par étape.

Supposons que j'ai attribué une valeur comme indiqué dans la capture d'écran ci-dessous sous la première cellule de la colonne A de la feuille «Getting_Cell_Value».

Suivez les étapes ci-dessous pour obtenir la valeur de cellule dans Excel VBA:

Étape 1: insérez un nouveau module sous VBE.

Étape 2: ajoutez une sous-procédure afin qu'une macro puisse être stockée sous forme de code.

Code:

 Sub VBA_Value_Ex3 () End Sub 

Étape 3: définir une nouvelle variable appelée Get_Value en tant que variante à l'aide de la fonction VBA Dim.

Code:

 Sub VBA_Value_Ex3 () Dim Get_Value As Variant End Sub 

Maintenant, vous devez affecter la valeur présente dans la cellule A1 à la variable définie ci-dessus.

Étape 4: tapez "Get_Value = ThisWorkbook.Worksheets". Cela permettra au compilateur VBA d'accéder à la feuille Excel où votre valeur est stockée.

Code:

 Sub VBA_Value_Ex3 () Dim Get_Value As Variant Get_Value = ThisWorkbook.Worksheets End Sub 

Étape 5: mentionnez le nom de la feuille de calcul entre parenthèses avec les citations dans lesquelles la valeur est stockée.

Code:

 Sub VBA_Value_Ex3 () Dim Get_Value As Variant Get_Value = ThisWorkbook.Worksheets ("Getting_Cell_Value") End Sub 

Étape 6: Maintenant, utilisez la méthode de la plage de points (.) Pour fournir la cellule exacte où la valeur est stockée sous la feuille nommée "Getting_Cell_Value".

Code:

 Sub VBA_Value_Ex3 () Dim Get_Value As Variant Get_Value = ThisWorkbook.Worksheets ("Getting_Cell_Value"). Range ("A1") End Sub 

Étape 7: Enfin, utilisez la méthode point (.) Value pour que la valeur réelle sous la cellule A1 soit accessible par le compilateur.

Code:

 Sub VBA_Value_Ex3 () Dim Get_Value As Variant Get_Value = ThisWorkbook.Worksheets ("Getting_Cell_Value"). Range ("A1"). Value End Sub 

Étape 8: Comme nous en avons parlé, nous devons obtenir la valeur stockée dans la cellule A1. Pour cela, utilisez MsgBox pour afficher la valeur de la variable Get_Value (qui ont déjà accédé à la valeur saisie dans la cellule A1).

Code:

 Sub VBA_Value_Ex3 () Dim Get_Value As Variant Get_Value = ThisWorkbook.Worksheets ("Getting_Cell_Value"). Range ("A1"). Value MsgBox Get_Value End Sub 

Étape 9: Appuyez sur F5 ou sur le bouton Exécuter pour exécuter ce code, vous obtiendrez la valeur présente dans la cellule A1 sous la boîte de message.

Voir, c'était la valeur que nous avons mentionnée dans la cellule A1 de la feuille «Getting_Cell_Value». Droite?

Exemple # 4 - Pouvons-nous obtenir plusieurs valeurs de cellule à la fois?

Supposons que j'ai des valeurs stockées dans trois cellules différentes A1, A2, A3 comme indiqué dans la capture d'écran ci-dessous:

Ne vous trompez pas si vous voyez le texte réparti le long des colonnes A à E. c'est juste une mise en page visible (car j'ai fusionné les cellules) et la valeur réelle est stockée sous les cellules A1, A2, A3 uniquement.

Suivez les étapes ci-dessous pour utiliser la valeur VBA Excel:

Étape 1: Définissez une variable comme variante sous une nouvelle sous-procédure dans votre module VBA.

 Code: Sub VBA_Value_Ex4 () Dim Get_Value_2 As Variant End Sub 

Étape 2: utilisez la méthode Range.Value pour récupérer la valeur des cellules A1: A3 et attribuer à une nouvelle variable définie à l'étape précédente.

Code:

 Sub VBA_Value_Ex4 () Dim Get_Value_2 As Variant Get_Value_2 = ThisWorkbook.Worksheets ("Getting_Cell_Value_2"). Range ("A1: A3"). Value End Sub 

Étape 3: Enfin, utilisez la fonction MsgBox pour afficher les valeurs stockées dans la cellule A1: A3.

Code:

 Sub VBA_Value_Ex4 () Dim Get_Value_2 As Variant Get_Value_2 = ThisWorkbook.Worksheets ("Getting_Cell_Value_2"). Range ("A1: A3"). Value MsgBox Get_Value_2 End Sub Sub 

Étape 4: Appuyez sur F5 ou sur le bouton Exécuter et voyez la sortie de ce code.

Vous obtiendrez une erreur d'exécution «13»: incompatibilité de type. La raison de cette erreur est que nous définissons une seule variable et que nous lui attribuons les valeurs d'un tableau unidimensionnel (avec trois lignes). Ce qui n'est logiquement pas possible.

C'est de cet article. Terminons les choses avec quelques points à retenir.

Choses dont il faut se rappeler

Vous ne pouvez pas définir la valeur de plusieurs cellules lors de l'utilisation de la méthode VBA CELLS, car elle prend des lignes et des colonnes comme arguments. Vous ne pouvez y spécifier que le numéro de ligne et le numéro de colonne.

Vous ne pouvez pas non plus obtenir des valeurs stockées dans plusieurs cellules dans une seule boîte de message. Si vous devez récupérer la plage de valeurs, vous devez écrire les arguments get séparés pour chacune des valeurs.

Articles recommandés

Cela a été un guide pour la valeur VBA. Ici, nous avons discuté de la façon d'utiliser la fonction de valeur VBA Excel ainsi que des exemples pratiques et un modèle Excel téléchargeable. Vous pouvez également consulter nos autres articles suggérés -

  1. Guide complet de VBA en cas d'erreur
  2. Comment utiliser le format de nombre VBA?
  3. Fonction VBA VLOOKUP avec des exemples
  4. Création d'une fonction VBA dans Excel
  5. Comment utiliser la fonction VBA Val?