Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

label lampeggiante

Ultimo Aggiornamento: 18/08/2019 14:47
Post: 353
Registrato il: 08/01/2012
Città: MILANO
Età: 56
Utente Senior
excel 2000/2007
OFFLINE
17/08/2019 14:24

Ciao a tutti,
come rendere lampeggiante il testo della label1 dell'userform allegata?
Grazie
patrik
[Modificato da patrik01 17/08/2019 14:26]
------------------
excel 2003 / 20007
Post: 4.227
Registrato il: 21/06/2013
Città: NAPOLI
Età: 70
Utente Master
Excel 365
OFFLINE
17/08/2019 15:21

Fai una ricerca sul forum perchè l'argomento (cella lampeggiante) è stato trattato molte volte.

Oppure anche con Google "Excel VBA Blinking cells"

Alfredo
Post: 353
Registrato il: 08/01/2012
Città: MILANO
Età: 56
Utente Senior
excel 2000/2007
OFFLINE
17/08/2019 16:04

Non cella lampeggiante ma il testo di una label di una userform.
------------------
excel 2003 / 20007
Post: 847
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Senior
Excel 2016-32bit Win11
OFFLINE
17/08/2019 16:04

Un saluto a tutti.

Da quello che ho capito io credo che il problema non sia far lampeggiare una cella bensì il testo di una label in una userform.
Dato che per far lampeggiare una cella si usa sempre la funzione vbe Application.OnTime non credo che questa possa applicata al testo di una label, al massimo nella proprietà della label si può impostare un formato testo diverso (grassetto, corsivo, un colore, ecc.).

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
Post: 4.228
Registrato il: 21/06/2013
Città: NAPOLI
Età: 70
Utente Master
Excel 365
OFFLINE
17/08/2019 16:45

Scusa Rollis forse mi sbaglio ma mi sembra di ricordare che la label abbia la proprietà ForeColor che dà il colore al testo (caption) in essa contenuto.

Se con un Application.Ontime si imposta per tot secondi il ForeColor = al BackColor e poi nuovamente ForeColor <> BackColor non si ottiene il "lampeggio" del testo contenuto in una label?

O ricordo male?

Che si tratti di celle o label sempre da Application.OnTime occorre partire.

Alfredo
Post: 848
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Senior
Excel 2016-32bit Win11
OFFLINE
17/08/2019 17:41

Per 'colore' mi riferivo a quel poco che si può fare con il parametro 'Font'

Per quanto riguarda l'Application.Ontime l'ho sempre utilizzata per lanci di altre macro e non ho mai 'pasticciato' usandola con i parametri di una Label, sarebbe da provare, ma credo che ci sia poco spazio temporale per tra il gestire la temporizzazione ed il tempo reale dell'apertura di quell' UserForm (serve solo per selezionare una voce) che ha vita breve.

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
Post: 850
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Senior
Excel 2016-32bit Win11
OFFLINE
17/08/2019 18:34

Ok, ho provato a 'pasticciare' e questo è quello che ho partorito:

Per valutare bisogna accedere al file dato che ci sono diverse piccole integrazioni in vari punti ma in pratica ho aggiunto un timer con macro avvio/stop ed un richiamo a tali macro da vari punto del progetto.
Per ora ho riscontrato una sola criticità, se chiudo l'UserForm con la croce e poi non clicco su una cella, alla successiva apertura dell'UserForm la Label non lampeggia.
Option Explicit
Dim xTime As Variant                              '<= aggiunta

Sub prova()

    UserForm1.Show
    
End Sub

Sub lampeggia()                                   '<= aggiunta

    xTime = Now + TimeSerial(0, 0, 1)
    UserForm1.Label1.Visible = Not UserForm1.Label1.Visible
    Application.OnTime xTime, "lampeggia", , True
    
End Sub

Sub interrompi()                                  '<= aggiunta

    On Error Resume Next
    Application.OnTime xTime, "lampeggia", , False
    
End Sub
Private Sub UserForm_Initialize()

    Me.Label1.Caption = Environ("UserName") & " inserisci il numero di righe da eliminare"
    Call lampeggia                                '<= aggiunta
    
End Sub
Private Sub CommandButton2_Click()

    Call interrompi                               '<= aggiunta
    Unload Me
    End
    
End Sub
Private Sub CommandButton1_Click()

    If Me.ComboBox1.BoundValue = vbNullString Then
    End If
    Call interrompi                               '<= aggiunta
    Unload Me
    
End Sub
[Modificato da rollis13 17/08/2019 18:39]

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
Post: 354
Registrato il: 08/01/2012
Città: MILANO
Età: 56
Utente Senior
excel 2000/2007
OFFLINE
17/08/2019 19:05

Grazie rollis,
aspetto una modifica?
patrik
------------------
excel 2003 / 20007
Post: 851
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Senior
Excel 2016-32bit Win11
OFFLINE
17/08/2019 19:24

Sinceramente no, non ho mai 'pasticciato' così tanto 😁.
Adesso, prima devo capire che 'giri' fa Excel VBE quando viene premuta la X 😮.

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
Post: 2.340
Registrato il: 06/04/2013
Utente Veteran
2010
OFFLINE
17/08/2019 19:41

Re:
rollis13, 17/08/2019 19.24:

Adesso, prima devo capire che 'giri' fa Excel VBE quando viene premuta la X 😮.



mbè, senza che ti impazzisci di più puoi sempre inibirla/intercettarla con la Private Sub UserForm_QueryClose....😉

saluti



[Modificato da dodo47 17/08/2019 19:42]
Domenico
Win 10 - Excel 2016
Post: 852
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Senior
Excel 2016-32bit Win11
OFFLINE
17/08/2019 21:27

Grazie dell'imbeccata 👍, così me la cavo con poco 🙄.
In realtà il mio pensiero era: "e se l'utente avesse bisogno della X ?".

Senza X basta aggiungere nel codice dell'UserForm quest'altra macro:
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)

    If CloseMode <> 1 Then Cancel = True
    Me.Caption = "Chiudi con gli appositi pulsanti !"
    
End Sub
[Modificato da rollis13 17/08/2019 21:32]

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
Post: 2.341
Registrato il: 06/04/2013
Utente Veteran
2010
OFFLINE
18/08/2019 09:51

Re:
rollis13, 17/08/2019 21.27:

.......In realtà il mio pensiero era: "e se l'utente avesse bisogno della X ?".




E che cambia? intanto intercetta la X e termina l'OnTime (che non vedrei...), poi non è detto che la queryClose debba per forza inibire la X, può semplicemente continuare il processo di chiusura della form senza ulteriori pulsanti ignorando il parametro Cancel.

(sempre che stiamo parlando della stessa cosa 🙄)

saluti



[Modificato da dodo47 18/08/2019 11:35]
Domenico
Win 10 - Excel 2016
Post: 854
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Senior
Excel 2016-32bit Win11
OFFLINE
18/08/2019 14:47

Hai perfettamente ragione 👍, è che ieri sera c'ho messo diverse ore per realizzare che una volta intercettato la X si può procedere come si vuole; sul momento, dopo l'imbeccata, mi bastava terminare correttamente l'Application.Ontime.
Ora però, dopo il bel giro in bicicletta di questa mattina, lascio il divertimento di fare qualche aggiustamento all'utente 😁.

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
Vota: 15MediaObject5,00113 1
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 03:18. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com