Condividi tramite

Dimensioni Colonne

Anonimo
2016-12-18T19:44:20+00:00

Ho già letto in un post di Aprile 2012 che la larghezza di una colonna è fissa per tutto il foglio.

Questo mi causa problemi in stampa nel senso che, a seconda della tabella che vado a stampare devo continuamente ridimensionare le colonne per far si che abbiano dimensioni omogenee.

Mi chiedevo se qualche esperto di VBA potesse consigliarmi una macro che automatizzi la larghezza delle colonne in base al range selezionato, almeno non lo devo fare tutte le volte a mano.

Grazie

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

Anonimo
2016-12-19T10:01:50+00:00

Ciao Nicolò

,

scusa hai ragione è che siamo in chiusura dell'anno e sto lavorando 7gg su 7 continuativamente per cui ho dimenticato di contrassegnare le risposte.

Sono io che devo scusarmi per la mia risposta scortese!

Per quanto riguarda la domanda sopra posta cerco di spiegarmi meglio.

Per non fare troppi fogli di lavoro ho riunito più tabelle in un unico foglio. Così facendo mi ritrovo però con la colonna D riga 20 che per essere "visualizzata" correttamente necessita di una larghezza di 20 mentre la stessa colonna ma riga 180 necessita di una larghezza di 35. Questo problema mi si presenta per tutte le colonne dalla C alla CC con larghezze variabili (ad esempio la C riga 20 dovrebbe avere larghezza 8 la C riga 180 dovrebbe avere larghezza 20) 

Ora quando vado a stampare devo ridimensionare a mano la colonna in questione in base al dato che contiene. Visto che una colonna non può avere dimensione variabile (non esiste una specie di interruzione di sezione come in Word), mi aiuterebbe molto una macro che seleziona i dati da stampare (es: a1: CC184 per i dati mensili, A1:Z184 per quelli trimestrali) e settasse la larghezza ottimale in base al range selezionato.

Pensi che la macro che mi hai scritto nel Post relativo ad Autofill possa essere adattata alla questione?

Penso che una soluzione possa essere di creare una visualizzazione personalizzata per ogni scenario. A questo proposito, vedi:

https://support.office.com/it-it/article/Creare-applicare-o-eliminare-una-visualizzazione-personalizzata-ce722bf9-0b4a-49a5-94ba-438fde18fc2b?ui=it-IT&rs=it-IT&ad=IT&fromAR=1

Per un approccio con VBA ,si potrebbe sfruttare l'evento Workbook_BeforePrint per modificare la larghezza delle colonne interessate prima della stampa e poi chiamare una procedura per ripristinarle dopo la stampa. Se questo secondo approccio fosse di interesse, ti chiederei di postare l'indirizzi degli intervalli di stampa e le larghezze delle colonne in ogni caso. Se ti fosse più semplice, potresti caricare un file - anche senza dati o con dati  fittizi - con un foglio per ognugno dei casi per mostrare le larghezze delle colonne e l'intervallo di stampa. 

===

Regards,

Norman

La risposta è stata utile?

0 commenti Nessun commento

10 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2016-12-19T10:06:33+00:00

    Ciao Fratello,

    Non va bene la risposta che ti ho dato via mail?

    Vedo che devo scusarmi anche con te! 

    Quando ho risposto a Nicolò stamattina, non avevo visto la tua risposta a non sapevo che che avevi già fornito una soluzione!

    ===

    Regards,

    Norman

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2016-12-19T09:49:10+00:00

    Non va bene la risposta che ti ho dato via mail?

    "

    Seleziona tutto il foglio (clic sul quadrettino a sinistra della A di colonna e sopra all’1 di riga), poi posizionati sul tratto di divisione fra la A e la B di colonna (vale anche fra qualsiasi altre due lettere di colonna) e fai doppio clic. tutte le colonne si ridimensioneranno in relazione alla lunghezza del loro contenuto (quindi attento, usa intestazioni brevi, non più lunghe dell’eventuale contenuto della colonna altrimenti la colonna si ridimensionerà sulla lunghezza dell’intestazione).

    Puoi automatizzare il tutto con il generatore di macro."

    Ciao, buone feste anche a te e famiglia.

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2016-12-19T07:22:41+00:00

    Ciao Norman,

    scusa hai ragione è che siamo in chiusura dell'anno e sto lavorando 7gg su 7 continuativamente per cui ho dimenticato di contrassegnare le risposte.

    Per quanto riguarda la domanda sopra posta cerco di spiegarmi meglio.

    Per non fare troppi fogli di lavoro ho riunito più tabelle in un unico foglio. Così facendo mi ritrovo però con la colonna D riga 20 che per essere "visualizzata" correttamente necessita di una larghezza di 20 mentre la stessa colonna ma riga 180 necessita di una larghezza di 35. Questo problema mi si presenta per tutte le colonne dalla C alla CC con larghezze variabili (ad esempio la C riga 20 dovrebbe avere larghezza 8 la C riga 180 dovrebbe avere larghezza 20) 

    Ora quando vado a stampare devo ridimensionare a mano la colonna in questione in base al dato che contiene. Visto che una colonna non può avere dimensione variabile (non esiste una specie di interruzione di sezione come in Word), mi aiuterebbe molto una macro che seleziona i dati da stampare (es: a1: CC184 per i dati mensili, A1:Z184 per quelli trimestrali) e settasse la larghezza ottimale in base al range selezionato.

    Pensi che la macro che mi hai scritto nel Post relativo ad Autofill possa essere adattata alla questione?

    Grazie

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2016-12-18T23:59:53+00:00

    Ciao Nicolò Zini,

    Ho già letto in un post di Aprile 2012 che la larghezza di una colonna è fissa per tutto il foglio.

    Questo mi causa problemi in stampa nel senso che, a seconda della tabella che vado a stampare devo continuamente ridimensionare le colonne per far si che abbiano dimensioni omogenee.

    Mi chiedevo se qualche esperto di VBA potesse consigliarmi una macro che automatizzi la larghezza delle colonne in base al range selezionato, almeno non lo devo fare tutte le volte a mano.

    Chiedo scusa ma, anche se non ho capito il problema ora segnalato, visto la presenza di una molteplicità di richieste da te recentemente, non credi che sia opportuno rispondere ad almeno uno delle risposte che hai ricevuto? 

    Nel frattempo, non credo che ti debba sorprenderti troppo, se io, sempre parlando per me stesso, dovessi decidere di non postare una eventuale soluzione a la tua corrente domanda.

    ===

    Regards,

    Norman

    La risposta è stata utile?

    0 commenti Nessun commento