Bom dia. Estou fazendo um formulário que tem duas caixas de combinação interligadas: Estado - Cidade. Ao se escolher o Estado na primeira caixa de texto na segunda ficam selecionadas apenas as cidades daquele Estado. Tentei integrar nas caixas de texto um código para que as mesmas aceitem novos registros e os incorporem aos dados da Tabela. Mas o mesmo não funciona, os dados não vão para a tabela. Como faço isso?
Aí vai os códigos que usei:
Private Sub cboCidade_NotInList(NewData As String, Response As Integer)
Dim sql As String
If MsgBox("Cidade não Cadastrado" & Chr(13) & Chr(13) & "Deseja cadastrar a Cidade " & UCase(NewData) & " agora?", vbYesNo, "Cadastro") = vbYes Then
sql = "INSERT INTO Tbl_Estado(Cidade) VALUES ('" & NewData & "')"
DoCmd.RunSQL sql
Response = acDataErrAdded
Else
Response = acDataErrDisplay
End If
End Sub
Private Sub cboEstado_AfterUpdate()
Me.cboCidade = Null
Me.cboCidade.Requery
Me.cboCidade = Me.cboCidade.ItemData(0)
End Sub
Private Sub cboEstado_NotInList(NewData As String, Response As Integer)
Dim sql As String
If MsgBox("Estado não Cadastrado" & Chr(13) & Chr(13) & "Deseja cadastrar o Estado " & UCase(NewData) & " agora?", vbYesNo, "Cadastro") = vbYes Then
sql = "INSERT INTO Tbl_Estado(Estado) VALUES ('" & NewData & "')"
DoCmd.RunSQL sql
Response = acDataErrAdded
Else
Response = acDataErrDisplay
End If
End Sub
Private Sub Form_Load()
Me.cboEstado = Me.cboEstado.ItemData(0)
Call cboEstado_AfterUpdate
End Sub
Aí vai os códigos que usei:
Private Sub cboCidade_NotInList(NewData As String, Response As Integer)
Dim sql As String
If MsgBox("Cidade não Cadastrado" & Chr(13) & Chr(13) & "Deseja cadastrar a Cidade " & UCase(NewData) & " agora?", vbYesNo, "Cadastro") = vbYes Then
sql = "INSERT INTO Tbl_Estado(Cidade) VALUES ('" & NewData & "')"
DoCmd.RunSQL sql
Response = acDataErrAdded
Else
Response = acDataErrDisplay
End If
End Sub
Private Sub cboEstado_AfterUpdate()
Me.cboCidade = Null
Me.cboCidade.Requery
Me.cboCidade = Me.cboCidade.ItemData(0)
End Sub
Private Sub cboEstado_NotInList(NewData As String, Response As Integer)
Dim sql As String
If MsgBox("Estado não Cadastrado" & Chr(13) & Chr(13) & "Deseja cadastrar o Estado " & UCase(NewData) & " agora?", vbYesNo, "Cadastro") = vbYes Then
sql = "INSERT INTO Tbl_Estado(Estado) VALUES ('" & NewData & "')"
DoCmd.RunSQL sql
Response = acDataErrAdded
Else
Response = acDataErrDisplay
End If
End Sub
Private Sub Form_Load()
Me.cboEstado = Me.cboEstado.ItemData(0)
Call cboEstado_AfterUpdate
End Sub