Userforn textbox/label

Anonimo
2019-03-20T06:59:36+00:00

Buogiorno ragazzi ho una richiesta da farvi:

Su Foglio1 ho un range di celle (A1:AE24) che tramite una formattazione condizionata in base al valore inserito che va da 1 a 12 cambiano colore di sfondo. Io devo ricreare la stessa cosa con una Userform, che andrò a richiamare con un CommandButton, formata da tanti textbox o label (a seconda di quello che sarà più opportuno) che andranno a cambiare il colore sfondo in base alle celle collegate. Come posso fare tutto questo in VBA?H Help Help! Help!

Premessa: la Userform la so "costruire", mi serve la parte VBA

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
2019-03-31T18:38:18+00:00

Prova con:

   Set oRangeP = ThisWorkbook.Worksheets("FERIE").Range(sRangeP)

   NumRigheP = oRangeP.Rows.Count

   With Me

   For i = 1 To NumRigheP Step 2

      cont=cont+1

      .Controls("Labelp" & cont).Caption = oRangeP(i, 1)

   Next i

   End With

Ne prosegui della tua routine c'è un "cont = cont + 1"

Ma mi pare che non sia poi realmente utilizzato (forse un residuo dal mio codice che "costruireva anche le label".

Se invece fosse utilizzato allora dopo il ciclo dei controlli del personale va impostato nuovamente a zero indicando cont = 0

La risposta è stata utile?

0 commenti Nessun commento
Risposta accettata dall'autore della domanda
Anonimo
2019-03-31T18:26:27+00:00

Ma B3:B23 sono più di 12 righe (21 per l'esattezza).

Mentre le label del personale sono solo 12.

Ho letto male e l'intervallo è B3:B26, quindi 24 righe.

Si tratta di righe unite due a due?

La risposta è stata utile?

0 commenti Nessun commento

36 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2019-03-28T19:20:39+00:00

    Top :)

    Ovviamente x la variabile "Strong" sulla VBA era scritta giusta :)

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2019-03-28T14:53:40+00:00

    A ecco i commandbutton sono nel foglio.

    In un modulo standard dichiari

    Public sRange as String

    Elimini "Dim sRange As Strong" (che poi una variabile dura non l'ho mai vista :D :D :D) all'interno dell'evento Initialize della UserForm

    Nei due commandbutton scrivi:

    Private Sub CommandButton1_Click ()

         sRange = "D3:AH26"

         UserForm1.Show

    EndSub

    Private Sub CommandButton2_Click ()

        sRange = "D30:AH53"

        UserForm1.Show

    EndSub

    Però visto che hai deciso di utilizzare VBA ti consiglio di approfondire studiano i vari concetti.

    Ad es. per le dichiarazioni delle variabili questo potrebbe essere un primo passo:

    https://docs.microsoft.com/it-it/dotnet/visual-basic/programming-guide/language-features/variables/variable-declaration

    leggengo anche gli articoli che vengono proposti alla fine del documento

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2019-03-28T11:56:18+00:00

    Nulla :(

    Nella UserForm ho:

    Option Explicit

    Private Sub UserForm_initualize ()

    Dim sRange As Strong

     bla bla bla

       bla bla bla

      ...

    End Sub

    Nel fogli2 ho:

    Private Sub CommandButton1_Click ()

    sRange = Worksheets ("FERIE").Range("D3:AH26)

     UserForm1.Show

    EndSub

    Private Sub CommandButton2_Click ()

    sRange = Worksheets ("FERIE").Range("D30:AH53)

     UserForm1.Show

    EndSub

    NB: nei CommandButton ho specificato il foglio Ferie (sarebbe fogkio1) da cui prendere il Range visto che nn è lo stesso foglio.

    Nn ho dimensionato sRange da nessuna parte in foglio2

    La risposta è stata utile?

    0 commenti Nessun commento