"#type!"erro no campo calculado do relatório

Tenho um relatório no Access com 3 campos.: Width, Height e Area
Width e Height são retirados da tabela a que o relatório Está ligado, enquanto Area deve ser calculado (altura * largura). Eu tenho o Control Source do Area para = [Height] * [Width], mas ao abrir o formulário, o campo apresenta #Type!, geralmente descritivo erros de Acesso de moda, com bom uso de # e ! para tornar impossível a precisão do Google... mas estou a divagar. Não faço ideia do que significa e o acesso não. quer dizer-me.

Não consigo entender isto. Na tabela de limites, Height e Width são inteiros, e são ambos povoados no registro sendo visto (então não é um problema NULL). Se eu mudar o Control Source para algo realmente simples - Como =[Height], ele cospe #Error! em vez disso (mais uma vez, obrigado pela informação útil, acesso. We would be lost without you). Mesmo = 1 cospe para fora #Error!.

Sabes porque é que o Access odeia as minhas fontes de controlo?

Author: StackzOfZtuff, 2013-10-31

5 answers

Você provavelmente tem um conflito de nomes, ou seja, o Access está captando os {[[0]} e Height membros do objeto relatório em vez dos Campos chamados Width e Height.

Eu criaria uma nova consulta e simplesmente renomearia os campos problemáticos nela. Então, se você está usando o desenhador de pesquisas:

  • adicionar a chave primária e qualquer outro campo não problemático, depois WidthValue: Width e HeightValue: Height como colunas adicionais;
  • Finalmente, defina a fonte de registo do relatório como a consulta em vez da tabela diretamente, e atualizar as fórmulas de controle calculadas em conformidade.
 5
Author: Chris Rolliston, 2017-09-28 08:04:24
Isto é um cálculo muito simplista. Qualquer razão pela qual você não cria uma consulta, Faz o cálculo na referida consulta, e vincula o relatório à consulta em vez disso? Não faz sentido matar-se a tentar perceber isto. Na verdade, Agora que estou pensando nisso, altura e largura são provavelmente palavras reservadas, pois são propriedades de um controle. Talvez mudá-los para a noite e a guerra ou algo assim?
 3
Author: Johnny Bones, 2013-10-31 15:26:31

Quando o access criou um relatório, usa o nome do campo das consultas para criar o nome do controlo relacionado no relatório. então se você usar os nomes do campo da consulta mais tarde ele realmente se refere ao controle do relatório com o mesmo nome. so solution, either rename the report field name to something different from query fields or fully qualify the query field name [query].[campo] para forçar o acesso a usar o nome do campo de consulta.

 0
Author: user8690222, 2017-09-28 14:15:51

A Microsoft não lista a altura e a largura como palavras reservadas, no entanto, elas são usadas para dimensionar formulários e relatórios.

 0
Author: topdesk, 2018-08-22 18:23:56

Carregue com o botão direito na sua área arquivada e seleccione as propriedades, depois vá para a página de eventos e carregue em "on ENTER" seleccione na lista [procedimento de Eventos] e carregue nos pontos do lado direito e vá para "MICROSOFT VISUAL BASIC para aplicação" nesta janela escreva este código por cima do "End Sub"

Área = Altura * Largura

Mas atenção o nome que introduz neste código deve ser capaz na sua base de dados e como as coisas que escrevem na linha de código boa sorte.

 -1
Author: javad, 2014-10-09 12:20:28