Se tiver um formulário longo de múltiplos itens, por vezes quer "desagregar" rapidamente para ver mais informações sobre um único item. Pode fazê-lo no Access ao ligar o formulário de múltiplos itens a um formulário de item único. Quando clica num item no formulário de múltiplos itens, o formulário de item único é aberto para mostrar os detalhes.
Notas:
-
Este artigo não se aplica a aplicações Web do Access – o tipo de base de dados que cria com o Access e publica online.
-
Se pretender algo diferente ao "ligar", consulte Outros tipos de ligação de formulário no final deste artigo.
Criar os formulários
Na maioria dos casos, os dois formulários numa configuração de desagregação baseiam-se na mesma tabela ou consulta. Se já tiver um par de formulários que pretende utilizar (um é uma folha de dados ou um formulário de múltiplos itens e o outro é um formulário de item único ou "detalhe"), pode ignorar esta secção. Caso contrário, utilize estes procedimentos para criá-los:
Criar uma folha de dados ou um formulário de múltiplos itens:
-
No Painel de Navegação, selecione a tabela ou consulta que contém os dados que pretende no formulário de folha de dados.
-
Clique em Criar > Mais Forms e, em seguida, clique em Múltiplos Itens ou Folha de Dados, consoante o tipo pretendido.
-
Efetue as alterações de estrutura pretendidas. Considere eliminar o máximo de colunas possível, deixando apenas informações suficientes para identificar cada item.
-
Guarde e feche o formulário.
Para obter mais informações sobre formulários de Múltiplos Itens, consulte Criar um formulário com a ferramenta Múltiplos Itens.
Criar um formulário de item único ou "detalhe":
-
No Painel de Navegação, selecione a tabela ou consulta que contém os dados que pretende no formulário de detalhes. Esta será provavelmente a mesma tabela ou consulta que utilizou para o primeiro formulário.
-
Clique em Criar > Formulário.
-
Efetue as alterações de estrutura pretendidas e, em seguida, guarde e feche o formulário.
Para obter mais informações, consulte Criar um formulário com a ferramenta Formulário.
Adicionar a lógica que abre o formulário de detalhes
Agora, para adicionar uma pequena macro ao formulário de múltiplos itens ou folha de dados. A macro abre o formulário de detalhes e certifica-se de que o item correto é apresentado.
Não se preocupe se não tiver feito muito trabalho com macros; pode simplesmente copiar e colar o XML que irá encontrar neste procedimento.
-
Se estiver a utilizar um formulário de folha de dados, faça duplo clique no mesmo no Painel de Navegação para o abrir. Para um formulário com múltiplos itens, clique com o botão direito do rato no Painel de Navegação e, em seguida, clique em Vista de Esquema.
-
Prima F4 para abrir a Folha de Propriedades se ainda não estiver aberta.
-
Clique na coluna à qual pretende adicionar a macro. Esta será a coluna em que clica para abrir o formulário de detalhes quando a macro estiver concluída. Na imagem acima, a macro é adicionada à coluna ID de frmContactList.
Sugestão: Pode adicionar a macro a mais do que uma coluna.
-
No separador Evento da Folha de Propriedades, clique na caixa de propriedades Ao Clicar ou Ao Clicar na Base de Dados (consoante pretenda que o formulário seja aberto ao clicar um único clique ou fazer duplo clique no campo) e, em seguida, clique no botão Criar
. -
Se o Access lhe pedir para escolher um construtor, selecione Construtor de Macros e clique em OK.
-
Selecione este bloco de XML e, em seguida, prima Ctrl+C para copiá-lo para a área de transferência: <?xml version="1.0" encoding="UTF-16" standalone="no"?> <UserInterfaceMacros xmlns="http://schemas.microsoft.com/office/accessservices/2009/11/application"> <UserInterfaceMacro For="ID" Event="OnClick"><Statements><Action Name="OnError"><Argument Name="Goto">Macro Name</Argument><Argument Name="MacroName">ErrorHandler</Argument></Action> <ConditionalBlock><If><Condition>[Form].[Dirty]</Condition><Statements><Action Name="SaveRecord"/></Statements></If></ConditionalBlock> <ConditionalBlock><If><Condition>IsNull([ID])</Condition><Statements><Comment>Open the form to a new record if the current ID is Null</Comment><Action Name="OpenForm"><Argument Name="FormName">frmContactDetails</Argument><Argument Name="DataMode">Add</Argument><Argument Name="WindowMode">Dialog</Argument></Action><Action Name="Requery"/></Statements></If><Else><Statements><Comment>Use a TempVar to pass a filter to the OpenForm action</Comment><Action Name="SetTempVar"><Argument Name="Name">Contact_ID</Argument><Argument Name="Expression">[ID]</Argument></Action><Action Name="OpenForm"><Argument Name="FormName">frmContactDetails</Argument><Argument Name="WhereCondition">[ID]=[TempVars]![Contact_ID]</Argument><Argument Name="DataMode">Edit</Argument><Argument Name="WindowMode">Dialog</Argument></Action><Action Name="RemoveTempVar"><Argument Name="Name">Contact_ID</Argument></Action><Action Name="RefreshRecord"/></Statements></Else></ConditionalBlock> </Statements></UserInterfaceMacro></UserInterfaceMacros>
-
Clique na área em branco do Construtor de Macros (imediatamente abaixo da lista pendente Adicionar Nova Ação ) e, em seguida, prima Ctrl+V para colar nas ações de macro. Se tudo correr bem, não verá o XML no Construtor de Macros. Este será expandido para os blocos de macro mais legíveis, conforme mostrado no passo seguinte.
-
Se necessário, substitua o nome do formulário (frmContactDetails) e o nome da coluna de ligação (ID) pelo nome do formulário e a coluna que está a utilizar para ligar os dois formulários. A imagem abaixo mostra onde poderá ter de fazer edições para corresponder aos seus próprios nomes de identificador:
-
No separador Estrutura , clique em Guardar e, em seguida , em Fechar.
-
Se quiser que as colunas clicáveis apareçam como uma hiperligação para que as pessoas saibam que podem clicar na mesma, certifique-se de que a coluna ainda está selecionada e, na Folha de Propriedades, clique no separador Formatar e defina a propriedade Mostrar Como Hiperligação como Sempre.
-
Guarde e feche o formulário e, em seguida, volte a abri-lo e teste a macro ao clicar ou fazer duplo clique na coluna que modificou.
Para obter mais informações sobre macros em bases de dados de ambiente de trabalho, veja Adicionar lógica a um controlo numa base de dados de ambiente de trabalho.
Outros tipos de ligação de formulário
Para criar uma combinação de formulário/subformulário e ligá-los, consulte Criar um formulário que contém um subformulário (um formulário um-para-muitos).
Para criar um formulário ligado a uma origem de dados, como uma tabela ou consulta, consulte Criar um formulário com a ferramenta Formulário.