Добавить в таблицу, используя несвязанное текстовое поле - PullRequest
0 голосов
/ 24 сентября 2019

Я пытаюсь добавить две точки данных в таблицу, используя несвязанные текстовые поля.Я могу получить один для правильного заполнения, но другой становится пустым.

Для этого примера Criteria1 = 1 и Criteria2 = 9/24/19

Вот мой код:

Dim StrSQL As String
Dim db As DAO.Database
Dim qdf As DAO.QueryDef
Set db = Application.CurrentDb

Set qdf = db.QueryDefs("3 - GRUpload")
Dim Criteria1 As String
Dim Criteria2 As String

Criteria1 = Me!GRValue
Criterial2 = Me!GRDate

StrSQL = "Insert Into [*Master Records - 2 - GRs] ([GR Value], [GR Date]) Values(" & Criteria1 & ", " & Criteria2 & ")"

qdf.SQL = StrSQL

Я приложил изображение итогового запроса, но это SQL, если это более полезно:

INSERT INTO [*Master Records - 2 - GRs] ([GR Value], [GR Date])
Select 1 As Exp1, Criteria2 AS Expr2;

Я пробовал несколько вариантов кода, в том числе:

Values(""" & Criteria1 & """, """ & Criteria2 & """)"

Что приводит к:

INSERT INTO [*Master Records - 2 - GRs] ([GR Value], [GR Date])
Select "1" As Exp1, "" AS Expr2;

Так что я в растерянности ... Может ли один из вас указать мне правильное направление?

Спасибо!

1 Ответ

0 голосов
/ 24 сентября 2019

Поле типа дата / время требует # разделителя для параметров.Тип текста использует апостроф (или двойная кавычка), чисел нет.Попробуйте:

StrSQL = "Insert Into [*Master Records - 2 - GRs] ([GR Value], [GR Date]) " & _
           Values(" & Criteria1 & ", #" & Criteria2 & "#)"

Настоятельно не рекомендуется использовать пробелы и знаки препинания / специальные символы в соглашении об именах.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...