Access 2016 Runtime ошибка неверного использования ноль - PullRequest
0 голосов
/ 12 октября 2018

Я проверяю, существует ли запись в форме Access 2016, если она существует, показывает сообщение, если не добавляет его в базу данных.Но я получаю недопустимое использование null, когда txtRepGrpNumber пуст, если не пуст, он добавляет его, даже если он уже существует в базе данных.RepGrpNumber - это числовое поле в базе данных.Это ошибка на моем if ifment.

 Private Sub btnSave_Click()
Dim db As DAO.Database
Dim strSql As String
Dim message As String
Set db = CurrentDb
If Nz(CStr(Me.txtRepGrpNumber)) >= "" Then
strSql = "INSERT INTO dbo_TblSwShowRoom(RepGrpNumber, ViewOrder, RepCompany, AddressFull, Contact, Phone, Hours, ViewPhotos, ViewTour, ImageShow, Image, AddBy, DateAdded, DateChanged, ChangedBy, Enabled) " & _
         "VALUES('" & Me.txtRepGrpNumber & "','" & Me.txtViewOrder & "', '" & Me.txtRepCompany & "', '" & Me.txtAddressFull & "', '" & Me.txtContact & "', '" & Me.txtPhone & "', '" & Me.txtHours & "', '" & Me.txtViewPhotos & "', '" & Me.txtViewTour & "', '" & Me.txtImageShow & "', '" & Me.txtImage & "', '" & Me.txtAddBy & "', '" & Me.txtDateAdded & "', '" & Me.txtDateChanged & "', '" & txtChangedBy & "', '" & txtEnabled & "')"
    db.Execute strSql
    Me.SubFrmSwShowRoom.Requery
Else
    message = MsgBox("Cannot save because Group Number is Blank", vbCritical)
End If
'End If
Me.Requery
End Sub

Ответы [ 3 ]

0 голосов
/ 12 октября 2018

CStr не может преобразовать значение Null.CStr(Null) выдает ту же ошибку, что и вы.Это должно сделать:

If Nz(Me.txtRepGrpNumber, vbNullString) <> vbNullString Then
0 голосов
/ 12 октября 2018

Причина, по которой вы получаете недопустимое использование нулевого значения, заключается в том, что значение txtRepGrpNumber не изменилось с тех пор, как вы открыли форму, и оно было нулевым, CStr выдает ошибку недопустимого использования нулевого значения, когда доходит до этого.

Чтобы исправить это:

If Me.txtRepGrpNumber & vbNullString <> vbNullString Then
0 голосов
/ 12 октября 2018

If CStr(Nz(Me.txtRepGrpNumber,"")) <> "" Then

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