Tamanho do campo via VBA
Adquira a assinatura vitalícia do site e passe a ter acesso aos arquivos exemplos, vídeos, revistas, livros e ao kit de montagem de ribbons. Você terá suporte por e-mail, caso necessite tirar dúvidas pontuais. Clique AQUI e veja como obter um dos nossos planos. Clique AQUI e faça uma visita a seção Downloads do site e verifique as centenas de arquivos que estará à sua disposição. Clique AQUI e faça uma visita a seção Vídeos do site e veja a lista que estará disponível ao se tornar o nosso assinante vitalício. Clique AQUI e saiba mais detalhes sobre o kit de montagem de ribbons (deixe seus aplicativos com aspecto profissional).
Usuário Maurício:
Em uma tabela tenho um campo que necessito saber a propriedade "Tamanho do Campo", utilizando o VBA com ADO. Como faço?
Suporte:
Maurício, pelo ADO você pode usar o Catalog do ADOX. Exemplo:
Dim con As New ADODB.Connection
Dim cat As New ADOX.Catalog
'Aqui, você usa o PROVIDER caso não esteja com a tabela vinculada Set con = CurrentProject.Connection Set cat.ActiveConnection = con Debug.Print cat.Tables("NomeDaTabela").columns("NodoDocampo").DefinedSize
Nota: Para usar o ADOX, você precisa ativar a referência MICROSOFT ADO EXT. 6.0 FOR DLL AND SECURITY
No caso de estar com as tabelas vinculadas, você pode usar o DAO que é mais simples. Exemplo:
currentdb.TableDefs("NomeTabela").Fields("NomeCampo").Size
Usuário Maurício:
O problema é que quando o campo é do tipo número, ele sempre retorna zero, independente do tamanho do campo ser Inteiro, Inteiro Longo, Duplo, etc. Eu não tenho idéia de como capturar isso.
Suporte:
Maurício, use o Precision.
...
Debug.Print cat.Tables("NomeTabela").columns("NomeCampo").Precision
'-------------------------------------
Byte = 3
Simples = 7
Inteiro Longo = 10
Duplo = 15
Decimal = 18
Inteiro = 5
Moeda = 19
Usuário Maurício:
Perfeito!
1 comentário(s) Tino Souza 20/11/2018 17:32:50 Olá Sr. Avelino Sampaio Boa noite Teria como detectar o movimento do mouse MouseMove no MDI do Access 2007? Estou usando o monta Ribbons que adquiri com o Sr. com o FondoAccess |