Print #1 et Tab( ) [Résolu]

pinje 129 Messages postés vendredi 25 juillet 2003Date d'inscription 24 août 2006 Dernière intervention - 16 juil. 2004 à 12:55 - Dernière réponse : pinje 129 Messages postés vendredi 25 juillet 2003Date d'inscription 24 août 2006 Dernière intervention
- 19 juil. 2004 à 11:25
Bonjour a tous,

j'utilise cette ligne de code en VB pour mettre des donnees dans un fichier texte:

Print #1, "TCHEZY "; Tab(10); "="; Tab(20); TCHEZY; Tab(30); "TIME AT WHICH ROUGHNESS COEFF. IS CHANGED (HR)"

Ceci marche tres bien et me donne le resultat suivant:

TCHEZY = 0.10 TIME AT WHICH ROUGHNESS COEFF
TEDDY = 0.10 TIME AT WHICH EDDY VISCOSITY IS
TDISP = 0.10 TIME AT WHICH DISPERSION COEFF
BETA = 1.016 MOMENTUM CORRECTION FACTOR
COED = 1.000 EDDY VISCOSITY COEFFICIENT
GAMMA = 13.000 LONGITUDINAL DISPERSION

Or ce fichier texte doit etre lu par un module de calcul fait sous Fortran qui est tres pointilleux avec les formats
et ne peut lire que ce type de donnees:

TCHEZY = 0.10 TIME AT WHICH ROUGHNESS COEFF
TEDDY = 0.10 TIME AT WHICH EDDY VISCOSITY IS
TDISP = 0.10 TIME AT WHICH DISPERSION COEFF
BETA = 1.016 MOMENTUM CORRECTION FACTOR
COED = 1.000 EDDY VISCOSITY COEFFICIENT
GAMMA = 13.000 LONGITUDINAL DISPERSION

Ma question est donc:

Comment dois je faire pour que mon programme sous VB m'imprime mes valeurs numeriques non pas A PARTIR
de la colone 20 'Tab(20)' mais SE FINISSANT a la colone 20?

Merci a tous ceux qui voudront bien me repondre car la, je vois pas du tout...

Jerem
Afficher la suite 

4 réponses

cs_PhilippeE 437 Messages postés mercredi 18 décembre 2002Date d'inscription 10 août 2010 Dernière intervention - 16 juil. 2004 à 14:38
+3
Utile
Un truc dans le genre te convient-il ?

Dim sLigne as String
' Nom de l'enregistrement
sLigne = sNomEnreg
' Rajout du symbôle égal en 10ème position
sLigne = sLigne & Space(9 - Len(sLigne)) & "="
' Rajout de la valeur de l'enreg avec le dernier caractère en 20ème position
sLigne = sLigne & Space(19 - (Len(sLigne) + Len(sValeurEnreg))) & sValeurEnreg
' Rajout du commentaire sur l'enreg à partir de la 30ème position
sLigne = sLigne & Space(9) & sCommentaire


Valeurs des variables utilisées par rapport à la première ligne de ton exemple (tout est en string)
sNomEnreg = "TCHEZY"
sValeurEnreg = "0.10"
sCommentaire = "TIME AT WHICH ROUGHNESS COEFF"
Cette réponse vous a-t-elle aidé ?  
pinje 129 Messages postés vendredi 25 juillet 2003Date d'inscription 24 août 2006 Dernière intervention - 16 juil. 2004 à 13:03
0
Utile
Desole,

Ca n'a pas pris en compte les espaces et tabulations, il fallait lire:

Ce que j'obtient:
TCHEZY...=.......0.10........TIME AT WHICH ROUGHNESS COEFF
TEDDY.....=.......0.10........TIME AT WHICH EDDY VISCOSITY IS
TDISP......=.......0.10........TIME AT WHICH DISPERSION COEFF
BETA.......=.......1.016.......MOMENTUM CORRECTION FACTOR
COED......=.......1.000.......EDDY VISCOSITY COEFFICIENT
GAMMA....=.......13.000.....LONGITUDINAL DISPERSION

Ce que j'aimerais avoir:
TCHEZY...=.......0.10........TIME AT WHICH ROUGHNESS COEFF
TEDDY.....=.......0.10........TIME AT WHICH EDDY VISCOSITY IS
TDISP......=.......0.10........TIME AT WHICH DISPERSION COEFF
BETA.......=......1.016........MOMENTUM CORRECTION FACTOR
COED......=......1.000........EDDY VISCOSITY COEFFICIENT
GAMMA....=....13.000........LONGITUDINAL DISPERSION

Jerem
cs_PhilippeE 437 Messages postés mercredi 18 décembre 2002Date d'inscription 10 août 2010 Dernière intervention - 16 juil. 2004 à 14:39
0
Utile
J'ai oublié l'essenciel :D

Print #1 sLigne
pinje 129 Messages postés vendredi 25 juillet 2003Date d'inscription 24 août 2006 Dernière intervention - 19 juil. 2004 à 11:25
0
Utile
Merci beaucoup, ca marche tres bien meme si je pensais qu'il y avait quand meme plus simple!

Jerem

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.