Me surgiu uma duvida em um dos meus projetos desenvolvidos. Preciso aumentar ou diminuir a altura de todos os campos de um relatório conforme o campo de maior altura. ou seja, se o campo tiver três linhas, ele ficará maior que os outros, porém os demais ficaram com altura igual a apenas uma linha de caracteres. Isto se dá porque os campos tem borda de cor preta, para que fique parecido a uma planilha. Alguem pode me ajudar? Grato.
2 participantes
Aumentar o tamanho dos campos conforme o campo de maior valor
rubenscouto- Super Avançado
- Respeito às regras :
Sexo :
Localização :
Mensagens : 680
Registrado : 02/10/2011
Avelino Sampaio- Developer
- Respeito às regras :
Sexo :
Localização :
Mensagens : 3900
Registrado : 04/04/2010
Que eu me lembre somente via programação.
1) Terá que abrir o relatório, no modo OCULTO, para capturar os maiores valores dos campos e armazena-los numa variável global, do tipo matriz : k(1)=...
2) Fecha o relatório oculto
3) Reabre o relatório no modo “visualizar impressão” e use o evento “ao formatar” do relatório para alterar a altura dos campos com os valores da variável matriz
Um exemplo de código no relatório para um campo:
Aonde X é uma variável global : public x as long
Chamando pelo relatório no modo oculto > fecha o relatório (variável x já está com o valor) > abre o relatório, usando o OpenArgs
x=0
docmd.OpenReport "rltatendimentos",acViewPreview, , ,acHidden
docmd.Close acReport ,"rltAtendimentos"
docmd.OpenReport "rltatendimentos",acViewPreview,OpenArgs:=1
Seria bom vc assitir minha vídeo-aula sobre programação em relatório, para entender a mecânica de funcionamento.
Vídeo - Programação de relatórios - Parte 1
Sucesso!
1) Terá que abrir o relatório, no modo OCULTO, para capturar os maiores valores dos campos e armazena-los numa variável global, do tipo matriz : k(1)=...
2) Fecha o relatório oculto
3) Reabre o relatório no modo “visualizar impressão” e use o evento “ao formatar” do relatório para alterar a altura dos campos com os valores da variável matriz
Um exemplo de código no relatório para um campo:
- Código:
Option Compare Database
Dim j
Private Sub Detalhe_Format(Cancel As Integer, FormatCount As Integer)
If Nz(Me.OpenArgs) = 0 Then Exit Sub
Me!ate_Marca.Height = x
End Sub
Private Sub Detalhe_Print(Cancel As Integer, PrintCount As Integer)
j = Me!ate_Marca.Height
If j > x Then
x = j
End If
End Sub
Aonde X é uma variável global : public x as long
Chamando pelo relatório no modo oculto > fecha o relatório (variável x já está com o valor) > abre o relatório, usando o OpenArgs
x=0
docmd.OpenReport "rltatendimentos",acViewPreview, , ,acHidden
docmd.Close acReport ,"rltAtendimentos"
docmd.OpenReport "rltatendimentos",acViewPreview,OpenArgs:=1
Seria bom vc assitir minha vídeo-aula sobre programação em relatório, para entender a mecânica de funcionamento.
Vídeo - Programação de relatórios - Parte 1
Sucesso!
rubenscouto- Super Avançado
- Respeito às regras :
Sexo :
Localização :
Mensagens : 680
Registrado : 02/10/2011
- Mensagem nº3
Como capturar o valor do campo de maior valor
conforme relatório em anexo, o que quero é que, ao formatar do relatorio, para cada linha em que o campo "Descrição da nota" aumentar ou diminuir de tamanho(altura), os outros campo aumentem juntamente com ele, formando uma linha de grade uniforme.
» [Resolvido]Ao Clicar buscar maior valor nos campos e inserir o valor em outro campo.
» [Resolvido]Como aumentar tamanho do valor padrão?
» [Resolvido]aumentar a altura de um campo conforme altura de outro campo.
» [Resolvido]Aumentar tamanho do campo - relatório
» Aumentar campo de acordo com o tamanho do texto digitado
» [Resolvido]Como aumentar tamanho do valor padrão?
» [Resolvido]aumentar a altura de um campo conforme altura de outro campo.
» [Resolvido]Aumentar tamanho do campo - relatório
» Aumentar campo de acordo com o tamanho do texto digitado