Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

demande d'explication sur quelques lignes de code

1 réponse
Avatar
c.estrem
bonjour,
je serai d=E9sireux d'avoir une explication sur ces quelques lignes de
code... A vrai dire je n'y comprends pas grand chose et vos
explications sont toutes les biens venus. :)
Merci de votre aide.

'Mise en forme de la premi=E8re =E9tiquette

Range("A1:B1").Select
ActiveCell.FormulaR1C1 =3D "R=E9f=E9rence"
Mot(1) =3D Left$(Left$(Ref, 10), 1)
Mot(2) =3D Left$(Right$(Left$(Ref, 10), 9), 3)
Mot(3) =3D Left$(Right$(Left$(Ref, 10), 6), 2)
Mot(4) =3D Left$(Right$(Left$(Ref, 10), 4), 3)
Mot(5) =3D Right$(Left$(Ref, 10), 1)
Mot(6) =3D Right$(Ref, 1)
Range("C1:E1").Select

ActiveCell.FormulaR1C1 =3D Ref
Select Case Len(Ref)
Case Is =3D 10
ActiveCell.FormulaR1C1 =3D Mot(1) & " " & Mot(2) & " " &
Mot(3) & " " & Mot(4) & " " & Mot(5)
Case Is =3D 11
ActiveCell.FormulaR1C1 =3D Mot(1) & " " & Mot(2) & " " &
Mot(3) & " " & Mot(4) & " " & Mot(5) & " " & Mot(6)
End Select

Moteur =3D ""
Select Case Mot(2)
Case Is =3D "292"
Moteur =3D "Motor1"
Case Is =3D "298"
Moteur =3D "Motor2"
Case Is =3D "311"
Moteur =3D "Motor3"
Case Is =3D "319"
Moteur =3D "Motor4"
Case Is =3D "260"
Moteur =3D "Motor5"
Case Is =3D "307"
Moteur =3D "Motor6"
Case Is =3D "322"
Moteur =3D "Motor7"
Case Is =3D "390"
Moteur =3D "Motor8"
End Select
Moteur =3D ""

1 réponse

Avatar
Daniel
Bonjour.

Range("A1:B1").Select
=> sélectionne les cellules A1 et B1
ActiveCell.FormulaR1C1 = "Référence"
=>Affecte la valeur "Référence" à la cellule active (ici A1)
Mot(1) = Left$(Left$(Ref, 10), 1)
=> Affecte le premier caractère de la variable Ref à Mot(1)
(2e instance de la variable Mot de type array; si "Option base 1"
a été spécifié, il s'agit alors dela première instance)
Mot(2) = Left$(Right$(Left$(Ref, 10), 9), 3)
=> Affecte les deuxième, troisième et quatrième caractères
de la variable Ref à Mot(2); se décompose comme suit :
les 3 caractères de gauche des 9 caractères de droite des 10
caractères de gauche de la variable Ref.
Mot(3) = Left$(Right$(Left$(Ref, 10), 6), 2)
=> Même principe pour les lignes suivantes
Mot(4) = Left$(Right$(Left$(Ref, 10), 4), 3)
Mot(5) = Right$(Left$(Ref, 10), 1)
Mot(6) = Right$(Ref, 1)
Range("C1:E1").Select
=> sélectionne la plage C1:E1
ActiveCell.FormulaR1C1 = Ref
=>Affecte la valeur de la variable Ref à la cellule active (ici C1)
Select Case Len(Ref)
=> suivant le nombre de caractères de la variable Ref
Case Is = 10
=> si le nombre de caractères de la variable est 10
ActiveCell.FormulaR1C1 = Mot(1) & " " & Mot(2) & " " &
Mot(3) & " " & Mot(4) & " " & Mot(5)
=>affecte à la cellule active la concétaténation des valeurs des différentes
instances de "Mot"
séparées par des espaces.
Case Is = 11
ActiveCell.FormulaR1C1 = Mot(1) & " " & Mot(2) & " " &
Mot(3) & " " & Mot(4) & " " & Mot(5) & " " & Mot(6)
End Select

Moteur = ""
Select Case Mot(2)
=> suivant la valeur de la variable Mot(2)
Case Is = "292"
=> si la valeur est 292
Moteur = "Motor1"
=> la variable Moteur prend la valeur "Moteur1"
Case Is = "298"
Moteur = "Motor2"
Case Is = "311"
Moteur = "Motor3"
Case Is = "319"
Moteur = "Motor4"
Case Is = "260"
Moteur = "Motor5"
Case Is = "307"
Moteur = "Motor6"
Case Is = "322"
Moteur = "Motor7"
Case Is = "390"
Moteur = "Motor8"
End Select
Moteur = ""
=> la variable Moteur est mise à la valeur vide

Cordialement.
Daniel