Ciao a tutti.
Non so con altre versioni ma con Excel 2007 riscontro questo particolare problema utilizzando dei controlli ActiveX nel caso in cui la risoluzione utilizzata, magari per utilizzo con un monitor differente, rispetto a quella con cui i controlli sono stati
creati.
In particolare i controlli si rimpiccioliscono "all'infinito".
Il problema l'ho riscontrato inizialmente con un controllo checkbox inserito in un foglio.
Una volta utilizzato il foglio con una risoluzione differente (da 1366x768 a 1920x1080) la "capiton" del controllo diventava sempre più piccola fino a diventare illegibile. Tale modifica risultava irreversibile. Al punto che ho sostituito il controllo ActiveX
con un controllo "modulo".
Ho provato un altro file dove, in maniera dinamica, rendo visibile, ridimensiono in base alle impostazioni di zoom un "controllo calendario" basato su un frame presente in un foglio, popolato da una serie di altri controlli (commandbutton, combobox, spinbutton).
Il controllo viene reso visibile o meno a seconda che venga selezionata una particolare cella.
Se tale azione non dà problemi con la risoluzione originaria mantendendo l'oggetto tutte le dimesioni originarie nel momento in cui l'utilizzo avviene con una risoluzione differente i controlli si rimpiccioliscono.
Ad es. situazione di partenza con risoluzinoe originaria:

Questo è quello che accade se cambio risoluzione dove la prima immagine presenta il "calendario" alle dimensioni previste:

se ad es. mi sposto in una cella differente (dove il calendario viene reso non visibile) e poi mi risposto sulla cella della data (dove il calendario viene reso visibile) succede che a parità di dimensioni del frame (le cui dimensioni sono fissate dinamicamente)
i controlli interni si rimpiccioliscono:

ripetendo l'operazione si ha un ulteriore rimpicciolimento:

e avanti così fino all' "infinito".
In questo caso poiché ho la possibilità di impostare diversi livelli di Zoom se imposto uno Zoom differente da quello di partenza tutti i controlli si ridimensionano al nuovo Zoom.
Ma poi ad ogni azione si ha un rimpicciolimento fino a che non modifico nuovamente lo zoom ex novo.
In questo file specifico, poiché come ho detto, il "controllo" viene dimensionato dinamicamente ho ripetuto le istruzioni .Zoom, .Width e .Height come di seguito:
With oCalendario
.Zoom = ZoomCalendario * 1.1
.Width = CalendarioWidth * .Zoom / 100 * 1.1
.Height = CalendarioHeight * .Zoom / 100 * 1.1
.Zoom = ZoomCalendario
.Width = CalendarioWidth * .Zoom / 100
.Height = CalendarioHeight * .Zoom / 100
....
In pratica modifico sempre prima lo zoom per poi impostarlo a quello desiderato (ZoomCalendario è una function che legge un nome excel dove è indicato un livello di zoom personalizzato che può essere 100, 105, ecc. ecc. mentre CalendarioWidth e CalendarioHeight
sono delle costanti che rapprsentano le dimensioni iniziali di creazione del frame che contiene i vari controlli) e così facendo ottengo che la riduzione si produca una sola volta avendosi una situazione "stabile" alla terza immagine presente in questo topic
(ma pur sempre con uno "sfalsamento" delle dimensioni dei controlli interni rispetto al frame che li contiene).
Aggiungo che se ritorno alla risoluzione originaria le dimensioni rispettano sempre quelle inizialmente impostate e che si modificano solo in base allo zoom personalizzato impostato dall'utente.
C'è qualcuno che ha notato questa anomalia per i controlli activex in caso di cambio di risoluzione utilizzata?
Grazie e ciao