Condividi tramite

UserForm ridimensionabile

Anonimo
2015-12-17T10:06:16+00:00

Mi sono accorto che utilizzando il file excel a cui ho abbinato una gestione tramite UserForm, questa aperta in un altro PC con risoluzione grafica diversa da dove ho costruito la UserForm, esce dalle dimensioni dello schermo. Volevo chiedervi se é possibile e se esistone delle istruzioni che mi permettano di ridimensionare la UserForm a piacimento e scorvervi all'interno utilizzano delle ScroolBars veticali e orizzontali.

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

  1. Anonimo
    2015-12-17T15:01:23+00:00

    Ciao Giuseppe,

    La tua risposta a Mauro mi ha sorpreso un po' e mette in dubbio la mia comprensione delle tue esigenze. Comunque, per vedere le barre di scorrimento anche con una risoluzione bassa dello schermo, forse prova qualcosa del genere;

    '=========>>

    Option Explicit

    '--------->>

    Private Sub UserForm_Initialize()

      With Application

      .WindowState = xlMaximized

      Zoom = Int((Application.Width) / Me.Width * 100)

      Width = .Width - 10

      Height = .Height - 10

      End With

    End Sub

    '--------->>

    Private Sub UserForm_Zoom(Percent As Integer)

        Dim dZoomFactor As Double

        Percent = Application.Min(390, Zoom)

        If Percent > 99 Then

            ScrollBars = fmScrollBarsBoth

            ScrollLeft = 0

            ScrollTop = 0

            dZoomFactor = Width * Percent / 100

            ScrollWidth = dZoomFactor - 10

            dZoomFactor = Height * Percent / 100

            ScrollHeight = dZoomFactor - 10

        Else

            ScrollBars = fmScrollBarsNone

            ScrollLeft = 0

            ScrollTop = 0

        End If

    End Sub

    '--------->>

    Private Sub TextBox1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)

        TextBox1.Font.Bold = True

    End Sub

    '--------->>

    Private Sub UserForm_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)

        TextBox1.Font.Bold = False

    End Sub

    '<<=========

    ===

    Regards,

    Norman

    La risposta è stata utile?

    0 commenti Nessun commento

11 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2015-12-17T11:21:27+00:00

    Grazie per il suggerimento nichi... L'ho provato, ma non sembra essere ciò di cui ho bisogno. Le istruzioni agiscono zoomandomi l'intera UserForm, Non ho bisogno di zoomare la User, ma di poter restringere la user senza agire sui controllo e applicare le ScroolBars che mi permetterebbero di scorrere in quelle aree fuori dalla risoluzione dello schermo. Applicando le ScroolBars alla Forms queste non hanno comunque nessun effetto.

    Grazie per il tuo interesse.

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2015-12-17T11:00:20+00:00

    Ciao Giuseppe vedi se ti può essere utile il file del grande Maurizio Borrelli che ti allego al seguente link: http://1drv.ms/1UDxjEb

    L'ho recuparato dal forum tempo fa per la stessa esigenza di un altro nostro amico della community.

    Ciao Nicola.

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2015-12-17T10:44:20+00:00

    No, volendo applicare le Scrollbars orizzontali e verticali sulla UserForm, cosa che mi riesce con questa istruzione: 

    • UserForm1.ScrollBars = fmScrollBarsBoth...

    il punto é che queste sono inutili se non riesco a ridimensionare la UserForm alla diensione della risoluzione dello schermo.

    Grazie

    Saluti Giuseppe

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2015-12-17T10:27:23+00:00

    Immagino tu voglia ridimensionare anche i controlli che si trovano sulla UserForm. Giusto?

    La risposta è stata utile?

    0 commenti Nessun commento