Macro messaggio popup se una cella soddisfa una condizione

Anonimo
2014-12-16T15:36:12+00:00

Buongionro a tutti.

di seguito una macro che ho applicato ad una tabella che si aggiorna di continuo con l'inserimento di righe di giorno in giorno: 

Private Sub Worksheet_Calculate()

    Dim valoreConfronto As Variant

    valoreConfronto = Sheets("Foglio1").Range("B1").Value

    Dim R As Range

    For Each R In Sheets("Foglio1").Range("A1:A10")

        If R.Value >= valoreConfronto And R.ID <> R.Text Then MsgBox R.Address & " Rilevato." 'Pop-Up

        R.ID = R.Text

    Next R

End Sub

la macro funziona, ovvero ogni volta che inserisco il "valore confronto" nella cella in cui deve essere inserito appare il messaggio popup.

l'unica cosa è che ogni volta che riapro il file mi appaiono un numero di messaggi popup equivalente a tutte le celle che soddisfano la condizione del "valore confronto".

come si potrebbe fare per ovviare a questo inconveniente?

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
2014-12-17T08:33:06+00:00

ciao,

ci ho pensato bene e ho risolto con una formattazione condizionale.

Grazie.

La risposta è stata utile?

0 commenti Nessun commento

4 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2014-12-17T20:43:44+00:00

    ciao,

    ci ho pensato bene e ho risolto con una formattazione condizionale.

    Grazie.

    Meglio, più semplice.

    Ciao e alla prossima.

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2014-12-16T16:04:35+00:00

    SCUSATE,

    LA MACRO E' QUESTA:

    Devi solo cambiare i riferimenti delle celle nella macro che ho postato.

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2014-12-16T15:53:44+00:00

    l'unica cosa è che ogni volta che riapro il file mi appaiono un numero di messaggi popup equivalente a tutte le celle che soddisfano la condizione del "valore confronto".

    come si potrebbe fare per ovviare a questo inconveniente?

    Certo. Al riavvio viene ricalcolato il foglio e quindi eseguito l'evento Calculate.

    Provato ad utilizzare invece l'evento Change sulla cella di confronto?

    Se(se, ma dubito) ho capito:

    Private Sub Worksheet_Change(ByVal Target As Range)

        If Target.Address <> "$B$1" Then Exit Sub

        Dim rng As Range

        Dim c As Range

        Set rng = Me.Range("A1:A10")

        For Each c In rng

            If c.Value >= Target.Value And c.ID <> c.Text Then

                MsgBox c.Address & " Rilevato."

                c.ID = c.Text

            End If

        Next

        Set c = Nothing

        Set rng = Nothing

    End Sub

    Dove la cella B1 del foglio dove hai anche la colonna A da controllare è il valore di confronto.

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2014-12-16T15:49:43+00:00

    SCUSATE,

    LA MACRO E' QUESTA:

    Private Sub Worksheet_Calculate()

        Dim valoreConfronto As Variant

        valoreConfronto = Sheets("ETICHETTE").Range("M8").Value

        Dim R As Range

        For Each R In Sheets("ETICHETTE").Range("M9:M200")

            If R.Value = valoreConfronto Then MsgBox R.Address & " Rilevato." 'Pop-Up

            R.ID = R.Text

        Next R

    End Sub

    Grazie

    La risposta è stata utile?

    0 commenti Nessun commento