Доступ: преобразование результата формы в таблицу
Я создал базовую форму поиска, в которой есть поля ввода, кнопки и область, в которой отображается результат.
Ключевое слово вводится в поля ввода, и нажмите кнопку "Поиск", чтобы отобразить результаты.
кнопка поиска имеет следующий код:
Private Sub mySearchQuery_Click()
Dim strSelect As String
Dim strWhere As String
If Len(Trim(Me!searchFirst.Value) & vbNullString) > 0 Then
strWhere = strWhere & " AND First_Name Like ""*" & Me!searchFirst.Value & "*"""
End If
If Len(Trim(Me!searchLast.Value) & vbNullString) > 0 Then
strWhere = strWhere & " AND Last_Name Like ""*" & Me!searchLast.Value & "*"""
End If
If Len(Trim(Me!searchState.Value) & vbNullString) > 0 Then
strWhere = strWhere & " AND State Like ""*" & Me!searchState.Value & "*"""
End If
If Len(Trim(Me!searchLIC.Value) & vbNullString) > 0 Then
strWhere = strWhere & " AND LIC Like ""*" & Me!searchLIC.Value & "*"""
End If
If Len(Trim(Me!searchNPN.Value) & vbNullString) > 0 Then
strWhere = strWhere & " AND NPN Like ""*" & Me!searchNPN.Value & "*"""
End If
If Len(Trim(Me!searchEmail.Value) & vbNullString) > 0 Then
strWhere = strWhere & " AND Email Like ""*" & Me!searchEmail.Value & "*"""
End If
If Len(Trim(Me!searchDateFrom.Value) & vbNullString) > 0 Then
strWhere = strWhere & " AND EXP >= #" & Me.searchDateFrom.Value & "#"
End If
If Len(Trim(Me!searchDateTo.Value) & vbNullString) > 0 Then
strWhere = strWhere & " AND EXP <= #" & Me.searchDateTo.Value & "#"
End If
strSelect = "SELECT * FROM MasterData"
If Len(strWhere) > 0 Then
strSelect = strSelect & " WHERE " & Mid(strWhere, 6)
End If
Me.RecordSource = strSelect
' SubForm.Form.RecordSource = sql
End Sub
Эта кнопка поиска будет искать элемент на основе заданных критериев. Если я введу "NY" в поле ввода "Состояние" и нажму кнопку "Поиск", в результате отобразится состояние "NY".
Мой вопрос: как мне экспортировать этот возвращенный результат из формы в таблицу и сохранить его? было бы хорошо, если бы я мог это сделать.
1 ответ
Решение
Просто используйте простой SQL. Не так сложно.
DoCmd.RunSQL "SELECT * INTO MyTable FROM MasterData" & strWhere