MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido] Definir propriedades de campos

    Compartilhe

    Gabriel Brunichaki
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 139
    Registrado : 11/12/2015

    [Resolvido] Definir propriedades de campos

    Mensagem  Gabriel Brunichaki em Sex 18 Mar 2016, 17:31

    Boa tarde!

    Estou tentando criar uma tabela pelo VBA já alterando algumas propriedades dos campos, mas aponta o erro "Operação Inválida" na linha marcada em vermelho. Estou tentando criar a tabela através de um procedimento em outro banco de dados que não tem nenhuma ligação com este.

    Sub RecreateMicrobiologyTable()

       Dim db As DATABASE
       Dim tblDef As TableDef
       Dim fld As Field
       
       Set db = OpenDatabase("C:\teste.mdb")
       Set tblDef = db.CreateTableDef("Microbiology")
       
       Set fld = tblDef.CreateField("Micro_ID", dbLong)
       fld.Attributes = dbAutoIncrField
       tblDef.Fields.Append fld
       
       Set fld = tblDef.CreateField("Micro_Sample_Date", dbDate)
       fld.Properties.Append fld.CreateProperty("Format", dbText, "Short Date")
       fld.DefaultValue = DateValue(Date)
       tblDef.Fields.Append fld
       
       Set fld = tblDef.CreateField("Micro_Tier_Name", dbText, 50)
       tblDef.Fields.Append fld
       
      Set fld = tblDef.CreateField("Micro_Tier_Breed", dbText, 10)
    tblDef.Fields.Append fld

    Set fld = tblDef.CreateField("Micro_Tier_Age", dbLong)
    ' fld.FieldSize = "Integer"
    ' fld.DecimalPlaces = 0
    tblDef.Fields.Append fld

    Set fld = tblDef.CreateField("Micro_Sample_Lab", dbText, 100)
    tblDef.Fields.Append fld

    Set fld = tblDef.CreateField("Micro_Sample_Collector", dbText, 60)
    tblDef.Fields.Append fld

    Set fld = tblDef.CreateField("Micro_Sample_Time", dbDate)
    fld.Properties.Append fld.CreateProperty("Format", dbText, "Short Time")
    tblDef.Fields.Append fld

    Set fld = tblDef.CreateField("Micro_Tier_Interval", dbByte)
    ' fld.DecimalPlaces = 0
    tblDef.Fields.Append fld

    Set fld = tblDef.CreateField("Micro_Sample_Type", dbNumeric)
    fld.Properties.Append fld.CreateProperty("DisplayControl", dbText, "ComboBox")
    fld.Properties.Append fld.CreateProperty("RowSourceType", dbText, "Table/Query")
    fld.Properties.Append fld.CreateProperty("RowSource", dbText, "SELECT * FROM Microbiology_Sample_Types ORDER BY [Type_Name];")
    fld.Properties.Append fld.CreateProperty("BoundColumn", dbInteger, 1)
    fld.Properties.Append fld.CreateProperty("ColumnCount", dbInteger, 2)
    fld.Properties.Append fld.CreateProperty("ColumnWidth", dbText, "0cm;2,54cm")
    tblDef.Fields.Append fld

    Set fld = tblDef.CreateField("Micro_Sample_Bacteria", dbNumeric)
    fld.Properties.Append fld.CreateProperty("DisplayControl", dbText, "ComboBox")
    fld.Properties.Append fld.CreateProperty("RowSourceType", dbText, "Table/Query")
    fld.Properties.Append fld.CreateProperty("RowSource", dbText, "SELECT * FROM Microbiology_Bacteria ORDER BY [Bacteria_Name];")
    fld.Properties.Append fld.CreateProperty("BoundColumn", dbInteger, 1)
    fld.Properties.Append fld.CreateProperty("ColumnCount", dbInteger, 2)
    fld.Properties.Append fld.CreateProperty("ColumnWidth", dbText, "0cm;2,54cm")
    tblDef.Fields.Append fld

    db.TableDefs.Append tblDef

    MsgBox "Foi!"

    End Sub

    Alguém ajuda? Ainda estou boiando um pouco nesta questão de criar tabelas e campos... Se puderem também avaliar o procedimento inteiro, ficarei imensamente agradecido! Very Happy


    .................................................................................
    “Não podemos solucionar problemas usando a mesma forma de raciocínio que usamos quando os criamos.”
    – Albert Einstein

    Avelino Sampaio
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3347
    Registrado : 04/04/2010

    Re: [Resolvido] Definir propriedades de campos

    Mensagem  Avelino Sampaio em Sab 19 Mar 2016, 10:57

    Olá!

    Veja se as minhas dicas te ajudam:

    [Você precisa estar registrado e conectado para ver este link.]

    Sucesso!


    .................................................................................
    ============ Quer aprender Access em alta velocidade ? ============

    || [Você precisa estar registrado e conectado para ver esta imagem.] Acesse o site UsandoAccess.com.br e veja um ótimo kit de ensino que tenho para você.

    ===========================================================

    Gabriel Brunichaki
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 139
    Registrado : 11/12/2015

    Re: [Resolvido] Definir propriedades de campos

    Mensagem  Gabriel Brunichaki em Sab 19 Mar 2016, 21:43

    Opa!

    Dei uma lida e a princípio tem tudo o que eu preciso, show de bola! Vou fazer os testes e dou um retorno.

    Valeu, abraço!


    .................................................................................
    “Não podemos solucionar problemas usando a mesma forma de raciocínio que usamos quando os criamos.”
    – Albert Einstein

    Gabriel Brunichaki
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 139
    Registrado : 11/12/2015

    Re: [Resolvido] Definir propriedades de campos

    Mensagem  Gabriel Brunichaki em Seg 21 Mar 2016, 17:44

    Quase tudo certo, só empaquei na criação de relações... Para criar um relacionamento, tem que haver um index? Se sim, em qual das tabelas, a primary ou a foreign? Qual campo escolho para ser o index?? O resto deu tudo certinho


    .................................................................................
    “Não podemos solucionar problemas usando a mesma forma de raciocínio que usamos quando os criamos.”
    – Albert Einstein

    Gabriel Brunichaki
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 139
    Registrado : 11/12/2015

    Re: [Resolvido] Definir propriedades de campos

    Mensagem  Gabriel Brunichaki em Seg 21 Mar 2016, 19:09

    Resolvido! Estava fazendo confusão com o nome dos campos... Tudo certo!! cheers

    Já salvei as dicas todas em PDF para posterior releitura!

    Agradeço a atenção, até a próxima.


    .................................................................................
    “Não podemos solucionar problemas usando a mesma forma de raciocínio que usamos quando os criamos.”
    – Albert Einstein

      Data/hora atual: Sab 03 Dez 2016, 04:34