> Tous les forums > Forum Autres langages
 VBS Modification dynamique chaîne
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
fgondard
  Posté le 23/01/2021 @ 17:42 
Aller en bas de la page 
Grand Maître astucien

Bonjour,

J'ai bien peur que mon titre soit un peu abscons. Je vais essayer d'être plus explicite.

J'ai une table de messages d'ano initialisée en début de script. Certains contiennent des variables concaténées avec du texte fixe (jusqu'ici pas de problème). Ces variables sont vides au départ et sont valorisées plus tard. Je souhaiterais que cette valorisation soit prise en compte quand j'affiche ces messages.

En d'autre termes est-il possible de répercuter automatiquement le changement du contenu de variables présentes dans une variable de type chaîne ?

Un exemple :

dim msg, toto
msg = "le contenu de toto est : " & toto
toto = "titi"
msgbox msg

Je souhaiterais afficher :

le contenu de toto est : titi

Mais peut-être que ce n'est pas possible en vbs. Je n'ai rien trouvé de ressemblant à ce qu'on appelle "opérateur macro" dans d'autres langages.

Merci d'avance pour vos suggestions

Publicité
txuku
 Posté le 24/01/2021 à 10:04 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonjour fgondard !

J ai l impression que tu melanges un peu vbs et vba ???

Un petit tour ICI !



Modifié par txuku le 24/01/2021 10:07
Titus68
 Posté le 24/01/2021 à 14:26 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Je ne pense que cela existe en vbs, si tu veux que ce soit évalué au moment du msgbox le plus simple c'est sans doute :

dim msg, totomsg = "le contenu de toto est : "toto = "titi"msgbox msg & toto

mais je suppose que je ne t'apprends pas grand chose ...

Cà supposerait un trigger mais en vbs çà n'existe pas.



Modifié par Titus68 le 24/01/2021 14:27
fgondard
 Posté le 24/01/2021 à 15:35 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Grand Maître astucien

Je ne pense que cela existe en vbs

Moi non plus mais comme je n'en connais pas forcément toutes les arcanes je me demendais si des fois ....

En Clipper, par exemple, on a la notion d'opérateur macro qui de mémoire doit correspondre à ce que je cherchais. En SAS aussi, on peut générer dynamiquement son code via les macros. En assembleur ce n'est pas un problème. Mais VBS est ce qu'il est, pratique mais rustique.

Debrief
 Posté le 24/01/2021 à 20:31 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Bonjour,

Si c'est en VBA, dans ce genre de cas il faut faire une manip simple.

Sub a()
Const Message01 = "Un erreur s'est produite en ligne *"
Dim NoLigne As Long

NoLigne = 12

MsgBox (Replace(Message01, "*", NoLigne))
End Sub

et tu obtiendras le joli message:

fgondard
 Posté le 24/01/2021 à 21:07 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Grand Maître astucien

Si c'est en VBA, dans ce genre de cas il faut faire une manip simple.

Je n'ai jamais parlé de VBA mais cette fonction, que je ne connaissais pas, existe aussi en VBS.

Merci infiniment pour cette astuce.

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
105 €SSD externe USB 3.1 PNY Elite CS1050 960 Go à 105 €
Valable jusqu'au 04 Mars

Amazon fait une promotion sur le SSD externe USB 3.1 PNY Elite CS1050 960 Go qui passe à 105 € livré gratuitement alors qu'on le trouve ailleurs à partir de 130 €. Ce SSD externe ultra compact (5,99 x 3,56 x 0,89 cm, 50 grammes) offre des vitesses allant jusqu'à 420 Mo/s en lecture et en écriture.


> Voir l'offre
159,78 €Kit de 32 Go (2x16 Go) de mémoire DDR4 Corsair Vengeance RGB Pro 3600 MHz à 159,78 € livré
Valable jusqu'au 03 Mars

Amazon Espagne fait une promotion sur le kit de 32 Go (2x16 Go) de mémoire DDR4 Corsair Vengeance RGB Pro 3600 MT/s CL18 à 155,05 € (avec la TVA ajustée). Comptez 4,73 € pour la livraison en France soit un total de 159,78 € livré alors qu'on le trouve ailleurs autour de 190 €. Vous pourrez personnaliser la palette de couleurs directement depuis le logiciel Corsair iCU.

Vous pouvez utiliser votre compte Amazon France sur Amazon Espagne et il n'y a pas de douane.


> Voir l'offre
99,99 €Ecran 24 pouces Viewsonic VA2418 (FullHD, IPS, 75 Hz) à 99,99 €
Valable jusqu'au 05 Mars

Darty fait une promotion sur l'écran 24 pouces VA2418-sh qui passe à 99,99 €. On le trouve ailleurs à partir de 120 €. Cet écran dispose d'une dalle FullHD IPS 5ms à 75 Hz, un filtre lumière bleue, de la technologie anti scintillement Flicker Free et intègre des ports VGA et HDMI.


> Voir l'offre

Sujets relatifs
macros VBA et VBS
VBS - Num serie des imprimantes installées
language VBS
VBS, problème de syntaxe
créer pop-up, bandeau ou ? dynamique
acess et vba pour modification d'une base de donnée
modification Setup.Lst
Editer à la chaîne les raccourcis dans un dossier
Site dynamique avec Dream et Wamp
déterminer si un une chaine est crypté
Plus de sujets relatifs à VBS Modification dynamique chaîne
 > Tous les forums > Forum Autres langages