共用方式為


字串運算式中的引號

在必須將字串建立為串連的情況下,您可能需要將字串內嵌在另一個字串中,或者在字串中內嵌字串變數。 您可能需要將一個字串以巢狀方式內嵌在另一個之中的情況:

  • 為範圍彙總函數指定準則時。

  • Find方法指定準則時。

  • 為表單的 FilterServerFilter 屬性指定準則時。

  • 當建立 SQL 字串時。

在所有這些情況下,Access 必須將字串傳到 Access 資料庫引擎。 比方說,當您為範圍彙總函數指定 criteria 引數,Access 必須評估任何變數,將其串連到字串,然後將整個字串傳到 Access 資料庫引擎。

內嵌數值變數時,Access 會評估變數並只將值串連到字串中。 不過,如果變數是文字字串,結果出現的準則會有字串中包含字串。 字串中的字串必須以字串分隔符號識別。 否則,Access 資料庫引擎會無法判斷哪些部分字串是您想要使用的值。

字串分隔符號實際上不是變數本身的一部分,但必須包含在 criteria 自變 量的字元 串中。 在 criteria 引數中建構字串有三個不同的方式。 每個方法會產生的 criteria 引數看起來會像下列範例的其中一個。

"[LastName] = 'Smith'"
"[LastName] = ""Smith"""

包括單引號

當變數的值串連入字串,以單引號括住它,您應該將單引號以這樣的方式包含在 criteria 引數中。 例如,假設您的 criteria 引數都必須包含一個名為 strName 的字串變數。 您可以建構 criteria 引數,如下列範例所示:

"[LastName] = '" & strName & "'"

當變數 strName 被評估並串連到 criteria 字串,criteria 字串會變成:

"[LastName] = 'Smith'"

注意事項

此語法不允許在變數本身的值之中使用單引號 (')。 如果字串變數的值包含單引號,Access 就會產生執行階段錯誤。 如果您的變數可能代表包含單引號的值,請考慮使用下列各節所述的其他語法形式。

包含雙引號

當變數的值受評估,以引號括住它,您應該將雙引號以這樣的方式包含在 criteria 引數中。 在字串之中,您必須使用二組雙引號記號來代表單一的雙引號記號。 您可以建構 criteria 引數,如下列範例所示:

"[LastName] = """ & strName & """"

當變數 strName 受評估並串連到 criteria 引數中,每個兩兩一組的雙引號會被一個單引號取代。 criteria 引數會變成:

"[LastName] = 'Smith'"

此語法可能比單引號記號語法顯得更複雜,但是它讓您能在 criteria 引數中嵌入字串,且該字串中包含單引號。 它也讓您能在嵌入字串之中巢狀放置一個或多個字串。

包含代表引號的變數

您可以建立代表雙引號記號的字串變數,和沿著變數的值串接此變數進入 criteria 引數中。 代表雙引號的 ANSI 是 Chr$(34),您可以將此值指派給稱為 strQuote 的字串變數。 接著您可以建構 criteria 引數,如下列範例所示:

"[LastName] = " & strQuote & strName & strQuote

當變數被計算和串接進入 criteriacriteria 引數成為:

[LastName] = "Smith"

支援和意見反應

有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應