質問編集履歴
1
ソースコード、PGM構築の背景を追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -5,14 +5,39 @@
|
|
5
5
|
数百というファイルを処理するときにこれでは処理できません。
|
6
6
|
解決策を教えて頂けないでしょうか
|
7
7
|
|
8
|
+
■質問追記
|
9
|
+
⇒adoR.Fields.Append "F_Name", 201 を指定しても同様にダメでした。
|
10
|
+
⇒前提としまして、このPGMはサブPGMです。親側から複数回実行されます。
|
11
|
+
arg3は親からの引数でシーケンス番号(1,2・・)を表しています。
|
12
|
+
つまり、親で\input\シーケンス番号を作成しておいて、子でsndからファイルを
|
13
|
+
取得して\input\シーケンス番号に格納します。つまりsndでファイルを昇順で取得
|
14
|
+
することができれば、格納先のシーケンス番号にも若番が入っていきます。
|
8
15
|
|
9
|
-
※
|
16
|
+
※※※※ソースを張りなおします※※※※
|
17
|
+
Dim fso,filefullpath
|
18
|
+
|
19
|
+
Set fso = createObject("Scripting.FileSystemObject")
|
20
|
+
filefullpath = fso.getParentFolderName(WScript.ScriptFullName)
|
21
|
+
|
22
|
+
Dim objfso, mySH,objFolder
|
23
|
+
|
24
|
+
Set mySH = CreateObject("WScript.Shell")
|
25
|
+
Set objfso = CreateObject("Scripting.FileSystemObject")
|
26
|
+
|
27
|
+
'取得元ディレクトリ
|
28
|
+
Set objFolder = objfso.GetFolder(filefullpath & "\snd")
|
29
|
+
|
30
|
+
'格納先ディレクトリ
|
31
|
+
Dim inpass : inpass = filefullpath &"\input\"& arg3 &"\"
|
32
|
+
|
33
|
+
Dim p: p = 0
|
34
|
+
|
10
35
|
Dim adoR
|
11
36
|
Dim FilN
|
12
37
|
|
13
38
|
'ソートの準備
|
14
39
|
Set adoR = CreateObject("ADODB.Recordset")
|
15
|
-
adoR.Fields.Append "F_Name",
|
40
|
+
adoR.Fields.Append "F_Name", 201
|
16
41
|
adoR.Open
|
17
42
|
|
18
43
|
For Each FilN In objFolder.Files
|
@@ -26,6 +51,11 @@
|
|
26
51
|
adoR.MoveFirst
|
27
52
|
|
28
53
|
Do Until adoR.EOF
|
54
|
+
If p < arg1 then
|
29
|
-
objfso.MoveFile adoR.Fields(0) ,
|
55
|
+
objfso.MoveFile adoR.Fields(0) , inpass
|
56
|
+
p = p + 1
|
30
57
|
adoR.MoveNext
|
58
|
+
end if
|
31
|
-
Loop
|
59
|
+
Loop
|
60
|
+
|
61
|
+
adoR.Close: Set adoR = Nothing
|