Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

altezza righe di un report

176 views
Skip to first unread message

mario rossi

unread,
Sep 8, 2022, 10:57:00 AM9/8/22
to
buongiorno a tutti,

ho un report con un sottoreport voci e dovrei cliccando un pulsante

ricevere l'altezza attuale fra una riga e l'altra in cm (suppongo sia l'altezza del corpo del sottoreport)

e poi settare un valore diverso di altezza riga con un altro pulsante

sapete indicarmi la retta via?

grazie a tutti.

mario rossi

unread,
Sep 8, 2022, 12:09:30 PM9/8/22
to
volevo dire che dovrei settare un altezza diversa dell'altezza del corpo del sottoreport

è possibile?

mario rossi

unread,
Sep 8, 2022, 5:17:23 PM9/8/22
to
sono riuscito in questo modo:

DoCmd.OpenReport "sottoreportvoci", acViewDesign, , , acHidden
Reports![sottoreportvoci].Report.Section(acDetail).Height = miovalore
DoCmd.Close acReport, "sottoreportvoci", acSaveYes


Simone Calligaris

unread,
Sep 9, 2022, 3:16:01 AM9/9/22
to

> sono riuscito in questo modo:
>
> DoCmd.OpenReport "sottoreportvoci", acViewDesign, , , acHidden
> Reports![sottoreportvoci].Report.Section(acDetail).Height = miovalore
> DoCmd.Close acReport, "sottoreportvoci", acSaveYes

Tieni conto che tale soluzione non funziona se poi creerai il file .Accde

Saluti

Simone Calligaris

unread,
Sep 9, 2022, 5:43:13 AM9/9/22
to

> > DoCmd.OpenReport "sottoreportvoci", acViewDesign, , , acHidden
> > Reports![sottoreportvoci].Report.Section(acDetail).Height = miovalore
> > DoCmd.Close acReport, "sottoreportvoci", acSaveYes

> Tieni conto che tale soluzione non funziona se poi creerai il file .Accde
>
> Saluti

P:S: Ad ogni modo, a meno che non sia cambiato qualcosa in recenti versioni, su evento "apertura" del sottoreport puoi personalizzare a Runtime il .Height del Corpo.

mario rossi

unread,
Sep 9, 2022, 8:41:11 AM9/9/22
to
Infatti ho il seguente problema:
al cliente ho installato ovviamente il file ACCDE e mi esce il messaggio che con quel formato non è possibile aprire in struttura il report quindi non posso usare la mia soluzione

avevo anche provato ad assegnare su formattazione del sottoreport qualcosa tipo me.section(AcDetail).height=300
ma mi è uscito un messaggio che la proprietà era in sola lettura

qualcuno sa come posso fare a riuscire a cambiare l'altezza a runtime in modo che tale funzionalità funzioni anche con il formato accde?

grazie.





mario rossi

unread,
Sep 9, 2022, 8:43:34 AM9/9/22
to
Il giorno venerdì 9 settembre 2022 alle 11:43:13 UTC+2 Simone Calligaris ha scritto:
Stavo pensando per esempio ad avere il report in un db esterno ma immagino che questa soluzione mostrerebbe un altra sessione di access che si apre quando richiamo il report esterno al db principale.

mario rossi

unread,
Sep 9, 2022, 8:47:31 AM9/9/22
to
Il giorno venerdì 9 settembre 2022 alle 11:43:13 UTC+2 Simone Calligaris ha scritto:
fonte: https://support.microsoft.com/it-it/office/propriet%C3%A0-height-12010a9c-4009-4398-9e6c-fc65a74283be

cito:
Per le sezioni dei report, non è possibile usare una macro o il codice VBA per impostare la proprietà Height quando si stampa o si visualizza l'anteprima di un report. Per i controlli dei report, è possibile impostare la proprietà Height quando si stampa o si visualizza l'anteprima di un report solo usando una macro o una routine evento specificata nell'impostazione della proprietà evento OnFormat di una sezione.

Simone Calligaris

unread,
Sep 9, 2022, 10:12:13 AM9/9/22
to

> avevo anche provato ad assegnare su formattazione del sottoreport qualcosa tipo me.section(AcDetail).height=300
> ma mi è uscito un messaggio che la proprietà era in sola lettura
>
> qualcuno sa come posso fare a riuscire a cambiare l'altezza a runtime in modo che tale funzionalità funzioni anche con il formato accde?

Ma non te l'avevo già scritto?
Evento open sottoreport: puoi impostare a codice il .height del corpo.

Saluti

mario rossi

unread,
Sep 9, 2022, 11:43:00 AM9/9/22
to
Pardon mi era sfuggito, ora provo grazie.

@Alex

unread,
Sep 9, 2022, 11:45:24 AM9/9/22
to
Se quanto suggerito da Simone non funziona metti un controllo nascosto ed usalo per ridimensionare la Sezione come ti serve.

@Alex

mario rossi

unread,
Sep 9, 2022, 11:57:14 AM9/9/22
to
Il giorno venerdì 9 settembre 2022 alle 17:45:24 UTC+2 @Alex ha scritto:
> Se quanto suggerito da Simone non funziona metti un controllo nascosto ed usalo per ridimensionare la Sezione come ti serve.
>
> @Alex

grazie per il consiglio, quanto suggerito da Simone funziona che è una meraviglia, non capisco perché allora Microsoft come da mia citazione messaggio precedente scriva che non si può a runtime, forse ho capito male io.

ho un altro problemino, se cambio altezza corpo vorrei che i campi qta prezzounitario e totale fossero perfettamente al centro rispetto all'altezza del corpo
ovviamente non la descrizione che partirà da metà e poi si estende

ho fatto così ma qualcosa non torna non è perfettamente centrato

Me.Qta.TopMargin = ((Me.Section(acDetail).Height - Me.Qta.Height) / 2)

ovvero se il corpo è alto 1500 twip e la casella di testo qta è alta 50 twip il marginetop sarà
(1500-50)/2 =725

forse però è più corretto sottrarre metà dell'altezza di qta?



mario rossi

unread,
Sep 9, 2022, 12:01:06 PM9/9/22
to
confermo funziona anche con accde grazie., su open però imposta un valore unico per tutti, sai se è possibile farlo anche per ogni singola riga?
esempio 3 righe

1 riga alta 1000 twip
1 riga alta 500 twip
1 riga alta 1300 twip


Simone Calligaris

unread,
Sep 10, 2022, 4:24:41 AM9/10/22
to


> > Evento open sottoreport: puoi impostare a codice il .height del corpo.

> confermo funziona anche con accde grazie., su open però imposta un valore unico per tutti, sai se è possibile farlo anche per ogni singola riga?
> esempio 3 righe

> 1 riga alta 1000 twip
> 1 riga alta 500 twip
> 1 riga alta 1300 twip

Quanto chiedi, a meno che non sia cambiato qualcosa in recenti versioni, non è fattibile.
Utilizzando un oggetto nascosto (nella Sezione) da ridimensionare a Runtime, puoi aumentare anche su evento "formattazione" la dimensione della sezione Corpo, però poi vale per tutte le Righe.

Saluti


@Alex

unread,
Sep 12, 2022, 2:53:51 AM9/12/22
to
Sei certo di questa affermazione...?
L'evento Format della Sezione si verifica quando viene generata la Sezione Stessa, ogni volta che viene generata, e, secondo me se tu modifichi la proprietà Height della Sezione, questa a Runtime cambia per OGNI sezione in modo indipendente.

Magari verificalo anche tu, io una prova veloce l'ho fatta e mi pare cos'.

@Alex

Simone Calligaris

unread,
Sep 12, 2022, 5:34:20 AM9/12/22
to

> Sei certo di questa affermazione...?
> L'evento Format della Sezione si verifica quando viene generata la Sezione Stessa, ogni volta che viene generata, e, secondo me se tu modifichi la proprietà Height della Sezione, questa a Runtime cambia per OGNI sezione in modo indipendente.
>
> Magari verificalo anche tu, io una prova veloce l'ho fatta e mi pare cos'.

Probabilmente ricordo male, ora non ho proprio tempo per testare la cosa: mi fido di quanto scrivi ;-)

Saluti

P:S: Quindi, è realizzabile la richiesta di tmtu? (altezza differente della sezione corpo per "ogni" riga) ... sicuro?

@Alex

unread,
Sep 12, 2022, 10:39:54 AM9/12/22
to
Bella questa "...mi fido di quanto scrivi", ma chiedi se sono sicuro...! ;-)
Che devo dire...? Fate voi.

@Alex

Simone Calligaris

unread,
Sep 12, 2022, 12:50:15 PM9/12/22
to

> Bella questa "...mi fido di quanto scrivi", ma chiedi se sono sicuro...! ;-)

Beh, senti: se ti va di provare facci sapere, altrimenti resteremo nel dubbio.

Saluti

@Alex

unread,
Sep 12, 2022, 1:41:34 PM9/12/22
to
Ma hai letto quello che avevo scritto...?
Mi sa di no...

@Alex

Simone Calligaris

unread,
Sep 12, 2022, 1:42:56 PM9/12/22
to

> > > Magari verificalo anche tu, io una prova veloce l'ho fatta e mi pare cos'.

Allora, ora la prova l'ho fatta pure io: non ricordavo affatto che la proprietà .Height del Corpo fosse modificabile a Runtime su eventi diversi da "Apertura".
E invece funziona senza problemi "su formattazione" anche con versioni antiche di Access (perlomeno dalla 2003).

Quindi, in definitiva, è possibile alzare e abbassare il corpo di un Report "riga per riga".

Saluti

mario rossi

unread,
Sep 14, 2022, 12:19:00 PM9/14/22
to
opperbacco, veramente?

a questo punto potrei mettere un campo altezza nella tabella fatturevoci e dare ad ogni riga l'altezza che voglio?

mi pareva di aver provato e mi aveva dato un messaggio tipo "proprietà di sola lettura" mettendo su formattazione questo codice
me.section(acdetail).height=500

mi mandi l'istruzione che hai usato su formattazione per avere righe di altezza diversa?






Simone Calligaris

unread,
Sep 14, 2022, 2:21:26 PM9/14/22
to

> a questo punto potrei mettere un campo altezza nella tabella fatturevoci e dare ad ogni riga l'altezza che voglio?
>
> mi pareva di aver provato e mi aveva dato un messaggio tipo "proprietà di sola lettura" mettendo su formattazione questo codice
> me.section(acdetail).height=500
>
> mi mandi l'istruzione che hai usato su formattazione per avere righe di altezza diversa?


Mah, "su formattazione" della sezione ho semplicemente forzato il me.<NomeSezione>.Height=<Valore>
Ma è la stessa cosa che hai fatto tu: strano che non ti vada...

Che versione di Access utilizzi?

Saluti

mario rossi

unread,
Sep 15, 2022, 5:48:43 AM9/15/22
to
Oggi riprovo poi ti aggiorno

mario rossi

unread,
Sep 29, 2022, 2:30:52 PM9/29/22
to
niente da fare ho aggiunto un campo altezza alla tabella voci del report
ho messo valori diversi tipo una riga alta 0,82 cm un altra altra 4,00 cm che poi moltiplico per 567 che sono i twip di un centimetro
in formattazione report voci ho messo

Me.Section(acDetail).Height = Me.AltezzaRiga * 567

se eseguo il debug vedo scorrere i vari valori 0,82 per la prima riga e 4 per la seconda ma poi in anteprima sono tutte alte 4 cm
un aiuto?






Simone Calligaris

unread,
Oct 14, 2022, 12:36:15 PM10/14/22
to

> niente da fare ho aggiunto un campo altezza alla tabella voci del report
> ho messo valori diversi tipo una riga alta 0,82 cm un altra altra 4,00 cm che poi moltiplico per 567 che sono i twip di un centimetro
> in formattazione report voci ho messo
>
> Me.Section(acDetail).Height = Me.AltezzaRiga * 567
>
> se eseguo il debug vedo scorrere i vari valori 0,82 per la prima riga e 4 per la seconda ma poi in anteprima sono tutte alte 4 cm
> un aiuto?

Strano, che versione di Access?

Saluti

@Alex

unread,
Oct 14, 2022, 4:36:09 PM10/14/22
to
Sicuro che sei in ANTEPRIMA w non in modalità LAYOUT...?

@Alex
0 new messages