2016-08-15 15 views
0

" - "または "null"が入力されたときに空白の文字列を返す関数をMicrosoft Accessアプリケーションに書き込もうとしています。元の文字列を返します。Microsoft AccessのテキストをVBA関数に置き換えます

これは私がこれまで持っているものです。

Public Function cleanOutput(inStr As String) 

    If inStr = "-" Or inStr = "null" Then 
     cleanOutput = "" 
    Else 
     cleanOutput = inStr 
    End If 

End Function 

は、しかし、これは動作しません。私はこれが非常に基本的な解決策だと確信していますが、私はVBプログラミングの経験がないので、ここで間違っているのか分かりません。どんな助けも大歓迎です!!

+0

"Instr"はVB/VBAの予約名です。関数内で異なる変数名を使用してみてください。 Option Explicitをモジュールの一番上に追加し、Debug |明らかな問題を見つけるためにコードを実行する前にコンパイルしてください – dbmitch

+0

関数の変数のdebug.printを二重引用符で囲んで、期待通りの結果を得てください。 – dbmitch

答えて

0

手段を「動作しない」何をかなり確実ではないが、「nullが」真ヌルを意味している場合は、使用することができます:

Public Function cleanOutput(inStr As Variant) As String 

    If Nz(inStr, "-") <> "-" Then 
     cleanOutput = inStr 
    End If 

End Function 
+0

"null"はNull値ではありません。 "null"は、私のデータベースがいくつかのフィールドで保持するテキスト文字列です。 – Chris

+0

あなたの機能はそのまま動作します。他に何かが起こっている。 – Gustav

0

私はINSTRから何か他のものに変数名を変更し、すべてが働いていました予想通り!

関連する問題