Caro Colega SRick tomei a liberdade de criar este programa pra você
Ele é muito prático pois ele já cria o Banco de Dados
este programa o ajudará a criar programas melhores e entender como funcionam
algumas das funções
primeiro no seu projeto vá em PROJECT/REFERENCES e marque a opção
MICROSOFT DAO 3.51 OBJECT LIBRARY
AGORA SIGA OS SEGUINTES PASSOS
INSIRA EM SEU FORM...
08 textbox com os seguintes nomes:
txtcod, txtnome, txtend, txtbairro, txtcid, txtcep, txtfone, txtemail
* No Textbox txtcod mude a propriedade Locked para True
06 command buttons com os seguintes nomes
btnanterior, btnproximo, btnnovo, btnsalvar, btnalterar, btnexcluir
AGORA CRIE UM MÓDULO E INSIRA ESTES CÓDIGOS
Global DB As Database
Global REG As Recordset
Global TB As TableDef
Global FD As Field
Global IX As Index
'
' A função a seguir cria s tabelas
'
Public Sub CriaTabelas()
Set TB = DB.CreateTableDef("tabclientes") ' cria a tabela com nome "tabclientes"
Set FD = TB.CreateField("codigo", dbText): vazio (0) ' cria o campo "codigo"(autonumeração)e não permite que seza vazio
Set FD = TB.CreateField("nome", dbText): vazio (1) 'cria o campo "nome" já permite que seja vazio
Set FD = TB.CreateField("endereco", dbText): vazio (1) 'cria campo "endereco"
Set FD = TB.CreateField("Bairro", dbText): vazio (1) 'cria o campo "bairro"
Set FD = TB.CreateField("Cidade", dbText): vazio (1) 'cria o campo "cidade"
Set FD = TB.CreateField("cep", dbText): vazio (1) 'cria o campo "cep"
Set FD = TB.CreateField("fone", dbText): vazio (1) 'cria campo "fone"
Set FD = TB.CreateField("email", dbText): vazio (1)' cria o campo "email"
'
' O código a seguir cria uma chave primária na tabela
'
DB.TableDefs.Append TB
Set IX = TB.CreateIndex("index")
Set FD = IX.CreateField("codigo") ' isto indica que o campo "codigo" sera a chave primaria
IX.Fields.Append FD
IX.Primary = True
TB.Indexes.Append IX
End Sub
'
' A função a seguir controla se o campo poderá ficar vazio ou não
'
Function vazio(opc As Integer)
If opc = 1 Then
FD.Required = True
FD.AllowZeroLength = True
End If
TB.Fields.Append FD
End Function
E DENTRO DO FROM COLOQUE O SEGUINTE:
Private Sub Salva()
REG("codigo") = txtcod.Text
REG("nome") = txtnome.Text
REG("endereco") = txtend.Text
REG("bairro") = txtbairro.Text
REG("cidade") = txtcid.Text
REG("cep") = txtcep.Text
REG("fone") = txtfone.Text
REG("email") = txtemail.Text
End Sub
Private Sub Navega()
txtcod.Text = REG("codigo")
txtnome.Text = REG("nome")
txtend.Text = REG("endereco")
txtbairro.Text = REG("bairro")
txtcid.Text = REG("cidade")
txtcep.Text = REG("cep")
txtfone.Text = REG("fone")
txtemail.Text = REG("email")
End Sub
Private Sub btnalterar_Click()
btnsalvar.Enabled = True 'ativa salvar
btnalterar.Enabled = False 'desativa alterar
btnexcluir.Enabled = False 'desatia excluir
REG.Edit ' sob escreve no registro
Salva
REG.Update
LimpaCampos
AutoNum
End Sub
Private Sub btnanterior_Click()
If REG.RecordCount <> 0 Then
btnsalvar.Enabled = False 'desativa salvar
btnalterar.Enabled = True 'ativa alterar
btnexcluir.Enabled = True 'ativa excluir
REG.MovePrevious
If REG.BOF Then
REG.MoveMax
Navega
Else
Navega
End If
End If
End Sub
Private Sub LimpaCampos()
txtcod.Text = ""
txtnome.Text = ""
txtend.Text = ""
txtbairro.Text = ""
txtcid.Text = ""
txtcep.Text = ""
txtemail.Text = ""
txtfone.Text = ""
End Sub
Private Sub btnexcluir_Click()
btnsalvar.Enabled = True 'ativa salvar
btnalterar.Enabled = False 'desativa alterar
btnexcluir.Enabled = False 'desativa excluir
REG.Delete
LimpaCampos
AutoNum
End Sub
Private Sub btnnovo_Click()
btnsalvar.Enabled = True ' ativa salvar
btnalterar.Enabled = False ' desativa alterar
btnexcluir.Enabled = False ' desatia excluir
LimpaCampos
AutoNum
End Sub
Private Sub btnproximo_Click()
If REG.RecordCount <> 0 Then
btnsalvar.Enabled = False 'desativa salvar
btnalterar.Enabled = True 'ativa alterar
btnexcluir.Enabled = True 'ativa excluir
REG.MoveNext
If REG.EOF = True Then
REG.MoveMin
Navega
Else
Navega
End If
End If
End Sub
Private Sub AutoNum()
If REG.RecordCount <> 0 Then ' Se a tabela não estiver vazia...
REG.MoveMax 'mova para o ultimo registro.....
txtcod.Text = Format(Val(REG("codigo")) + 1, "0000") ' e adicione mais um a este.
Else ' caso contrário...
txtcod.Text = "0001" ' acrescente o numero 0001
End If
End Sub
Private Sub btnsalvar_Click()
' ativa os botões
btnsalvar.Enabled = True ' ativa salvar
btnalterar.Enabled = False ' desativa alterar
btnexcluir.Enabled = False ' desativa excluir
AutoNum
REG.AddNew ' adiciona um novo registro
Salva
REG.Update
LimpaCampos
AutoNum
End Sub
Private Sub Form_Load()
If Dir("clientes.mdb") = "" Then ' verifica se o banco de dados com o nome "clientes.mdb" existe
Set DB = Workspaces(0).CreateDatabase("clientes.mdb", _
dbLangGeneral, dbversion351) ' se não existir será criado um banco de dados com nome "clientes.mdb"
CriaTabelas ' cria as tabelas do banco
Else ' caso já exista...
Set DB = Workspaces(0).OpenDatabase("clientes.mdb") ' ele abrirá este banco...
Set REG = DB.OpenRecordset("tabclientes", dbOpenTable) '... e a tabela de clientes(tabclientes)
End If
AutoNum
btnsalvar.Enabled = True ' ativa salvar
btnalterar.Enabled = False ' desativa alterar
btnexcluir.Enabled = False ' desatia excluir
End Sub
ESTE PROGRAMA FOI DESENVOVILDO PARA ESTUDO
POIS ABORDA COMO CRIAR A TABELA VIA CÓDIGO
O QUE FACILITA AO SE INSTALAR EM OUTRO PC
ESPERO TER AJUdADO
E APROVEITEM