Bonjour,

Je suis newbie en matière de VBScript et me voici confronté à cette erreur d'identificateur attendu :/

Mon script est sensé lire un fichier de type CSV, donc avec des données comme ceci : A;B;C; etc... et les ranger dans un tableau à 2 dimensions. Le but étant de créer un fichier CSV contenant certaines lignes et certaines valeurs du fichier de base choisies selon la valeur de la première valeur de la ligne.

Par exemple passer de :

A;B;C
D;E;F
A;H;I
à

A;C
A;I
Mon fichier à traiter étant évidemment bien plus complexe, il y a 90 valeurs par lignes et je dois en récupérer 15.

J'ai fait ceci et l'erreur est indiquée ligne 53.

ps : La fonction ecrirefichier est juste un petit programme de test.

ps2 : je suis sous win xp pro

Problème résolu =>> il s'agissait de la variable case qui est en fait un nom reservé et donc il ne faut pas attribuer ce nom à une variable.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
Option Explicit

'---------------------------------------------------------------------------------------------------

'création du type "fichier"

Dim objFichier
Set objFichier=CreateObject("Scripting.FileSystemObject")
Const ForReading = 1, ForWriting = 2, ForAppending = 8

'---------------------------------------------------------------------------------------------------

function nbligne(fichier)
'retourne le nombre de ligne d'un fichier.
'testé et approuvé

dim ligne
dim n

n=0
do while not fichier.atendofstream
	ligne=fichier.Readline
	n=n+1
loop

nbligne = n
end function

'---------------------------------------------------------------------------------------------------

'Définition des fichiers à ouvrir et des fichiers à créer.

dim cu_382	'fichier à analyser.
dim capa             'erreur ici, case est un nom réservé, renommer la variable en macase 
dim raw() 	'tableau des valeurs brutes.
dim nCU		'nombre de lignes du fichier à analyser.

Set cu_382 = objfichier.opentextfile("382_cu.txt", ForReading)
Set capa = objFichier.OpenTextFile("capacité.txt", ForAppending, True)
nCU = nbligne(cu_382)

'---------------------------------------------------------------------------------------------------
'test

wscript.echo "nombre de ligne du fichier : " & nCU

'---------------------------------------------------------------------------------------------------

function table(fichier)
'stocke les valeurs du fichier dans un tableau T de 2 dimensions et retourne le tableau T.

dim i, k, a  '=== >>> erreur identificateur attendu ici <<<<<<
dim capa             'erreur ici, case est un nom réservé, renommer la variable en macase 
redim T(a,100)
dim ligne

a=nbligne(fichier)

i=0
k=0

for i=0 to nbligne(fichier)
	ligne=fichier.Readline
	case=Split(ligne,";") 'ligne est une variable contenant une ligne entière. case est un tableau contenant les valeurs de la ligne.

	for k=0 to ubound(case)
		T(i,k)=case(k)	'remplit chaque ligne du tableau T avec les valeurs de chaque ligne du fichier.
	next
next

table=T 

end function

'---------------------------------------------------------------------------------------------------

sub ecrirefichier(fichier,T)
'écrire les données d'un tableau dans un fichier.

	fichier.WriteLine "fichier créé"
	fichier.WriteLine "affichage de la 44e ligne du fichier" & T(44,1) & ";" & T(44,2) & ";" & T(44,9)

end sub

'---------------------------------------------------------------------------------------------------

dim T
T = table(cu_382)
ecrirefichier(capa, T)

Merci par avance pour votre aide !