2012-04-07 22 views
1

MS AccessでVBAを使用すると、文字列内のすべての特殊文字をASCII同等物に置き換える方法はありますか?言い換えれば、私はアンパサンドを消して、&と置き換えて、他のすべての特殊文字とともに置き換えます。ASCIIへの特殊文字

PHP相当額はHTMLSpecialCharsです。私はおそらく私のクエリを吹いている私のインサートにセミコロンがあります。私は挿入のために私のテキストをきれいにするためにセミコロンを変換する必要があります。

+0

Ummm、アンパサンドは完全に有効なASCII文字ですが、特別なものは何もありません。少なくともASCIIではありません。 – RBarryYoung

+0

本当にここで求めていることは、HTMLのエンティティ化のようなものだと思いますか? – RBarryYoung

+0

PHP相当のHTMLSpecialCharsです。私は私の問題にもっと具体的にすべきだった...私はおそらく私のクエリを吹いている私のインサートにセミコロンがあります。私は挿入のために私のテキストをきれいにするためにセミコロンを変換する必要があります。 – Ben

答えて

1

Replace Functionは、Access VBAで利用できるアクセス2000で開始。

? Replace("a&v", "&", "&") 
a&b 

交換する他の文字には、その機能パターンを繰り返す必要があります。

ただし、これがINSERT文を吹き飛ばすのを防ぐためのものであれば、赤ん坊かもしれません。挿入するテキストが適切に引用されているか、パラメータクエリにパラメータとして指定されている限り、セミコロンまたはアンパサンドを含むテキストをテキストフィールドに挿入することができます。両方のステートメントは私のために正常に実行されます。

CurrentDb.Execute "INSERT INTO MyTable (MyText) " & _ 
    "VALUES ('a&b')" 
CurrentDb.Execute "INSERT INTO MyTable (MyText) " & _ 
    "VALUES ('a;b')" 

それは私たちにそれを爆破する原因となるテキストの簡単な例を使用して失敗するINSERT文のSQLを表示するのを助けることができます。また、エラーメッセージがあれば教えてください。あなたの質問にコメントではなくSQLを貼り付けてください。