2012-03-11 15 views
0

データベースの値は、10000000,10000001,10000002のようになります。今私は、文字列(ID)に保存された値を持っていると私は0a、1a、2bとして出てくるように結合を行う場合、新しい値を割り当てたい。VBscriptを使用した配列と結合のデータベース値

必要なこのそれは私にエラー マイクロソフトのVBScript実行時エラー '800A01A8' を与え

オブジェクトしよう

Dim LineOfText 
Dim i 
Dim aryTextFile(12) 
if ID.contains("10000000") then 
aryTextFile(9) = "0a" 
end if 
if ID.contains("10000002") then 
aryTextFile(10) = "1a" 
end if 
if ID.contains("10000001") then 
aryTextFile(11) = "2b" 
end if 

LineOfText = String.Join(",", aryTextFile) 

:だから私は間違って何をやっている '10000001,10000002'

を?

多分私は文字列に値を作っていないかもしれないと思った後。

strSQL = "SELECT ID from table where hdnID like 3696 " 
set objRec = Server.CreateObject("ADODB.Recordset") 
objRec.Open strSQL, cn, 0, 1 
Dim ID 
ID = objRec("ID") 

私はC#で、この作業を持っていますが、VBScriptの同等 を必要とするC#のコードは

string[] Otherspace = new string[] { 1a, 2b, 3c }; 
       string txaNotes = String.Join(", ", Otherspace.Where(q => !string.IsNullOrEmpty(q))); 

答えて

0

これを試してみてくださいです:

LineOfText = join(aryTextFile, ",") 
+0

いや、いくつかのエラー。 – alsu3

+0

エラーを投稿した方が便利です。 –

+0

そこにいましたが、私はそれが十分記述的だったと思います。 – alsu3

0

あなたが構築するためにネットのインポートを使用することができます配列を作成し、結合します。あなたはこれを達成する方法の

例:

Dim DataList, ID 
ID = "10000000 foo 10000002 bar" 
Set DataList = CreateObject("System.Collections.ArrayList") 

If instr(ID, "10000000") Then DataList.Add "0a" 
If instr(ID, "10000001") Then DataList.Add "1a" 
If instr(ID, "10000002") Then DataList.Add "2b" 

LineOfText = join(DataList.ToArray, ", ") 
' LineOfText will have value "0a, 2b"