Msgbox una sola volta



  • Msgbox una sola volta
    di Rossella (utente non iscritto) data: 28/08/2014 22:25:19

    Buonasera a tutti. Quando in una cella, precisamente AX9 assume un valore diverso da vuoto mi esce il msgbox avvisandomi di ciò; però mi esce sempre in quanto ho questo codice:

    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If [AX9] <> "" Then
    MsgBox "Aggiornare!"
    End If
    End Sub

    Siccome il msgbox mi esce sempre anche ad ogni spostamento di cella fino a quando non aggiorno chiedo se è possibile fallo uscire una sola volta. Grazie in anticipo



  • di lepat (utente non iscritto) data: 29/08/2014 08:18:10

    prova così
     
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    if target.address = "$AX$9" and target <> "" then 
      MsgBox "Aggiornare!"
    End If
    End Sub 



  • di Rossella (utente non iscritto) data: 29/08/2014 20:54:38

    Ciao Lepat, grazie per la tua risposta. Ho sostituito il mio codice con il tuo ma praticamente il msgbox non mi è uscito nemmeno uno e mi è andato in debub sulla riga:

    if target.address = "$AX$9" and target <> "" then

    dopo il debug cliccando sulla cella AX9 mi è uscito il msgbox.



  • di lepat (utente non iscritto) data: 30/08/2014 07:19:37

    allega il file



  • di Rossella (utente non iscritto) data: 30/08/2014 21:46:27

    Ho allegato un esempio del mio file.



  • di lepat (utente non iscritto) data: 31/08/2014 09:07:09

    non hai sostituito la tua macro con la mia, hai lasciato la tua



  • di lepat (utente non iscritto) data: 31/08/2014 09:08:56

    fai copia e incolla dal forum sulla finestra vba, non digitarla, potresti fare errori



  • di Rossella (utente non iscritto) data: 31/08/2014 11:07:19

    Ho già provato la tua macro ma non va, mi va in debug; lo avevo già scritto in un precedente post. Prova tu e vedi.



  • di lepat (utente non iscritto) data: 31/08/2014 12:55:36

    io ho provato e funziona



  • di Rossella (utente non iscritto) data: 31/08/2014 20:50:43

    Nel tuo file non va in debug (nel mio file originale quando l'ho provato in ufficio mi dava il debug) però il msgbox non esce, per farlo uscire devo cliccare nella cella AX9; a me servirebbe che mi esca automaticamente una sola volta per avvisarmi e poi basta, quindi come si potrebbe fare?



  • di lepat (utente non iscritto) data: 01/09/2014 08:18:05

    devi spiegarti meglio, la cella AX9 contiene una formula ? in quali occasioni assume un valore non vuoto ?



  • di Rossella (utente non iscritto) data: 01/09/2014 21:06:51

    La cella AX9 deve essere vuota, quando si verifica un "caso" (vedi il mio file allegato) assume un valore e dovrebbe darmi il msgbox.



  • di lepat (utente non iscritto) data: 01/09/2014 21:13:36

    devi essere meno vaga, che significa quando si verifica un "caso"



  • di Rossella (utente non iscritto) data: 01/09/2014 21:20:31

    Adesso sto navigando con il cell e non ho il file sotto mano. Nel mio file allegato nella cella AX9 c'è una formula, così a memoria non la ricordo, basta vederla dal file.



  • di Rossella (utente non iscritto) data: 02/09/2014 23:59:05

    Novità?



  • di lepat (utente non iscritto) data: 03/09/2014 06:02:40

    Le novità le aspetto da te, io ti ho fatto una domanda e tu non hai tempo per rispondere ed allegare un file serio



  • di Rossella (utente non iscritto) data: 03/09/2014 06:21:53

    Il file ce l'ho sul pc dove lavoro e non lo posso inviare anche perché ci sono dati personali, ho allegato un esempio con dati a caso ma che spiegano bene il mio quesito.



  • di lepat (utente non iscritto) data: 03/09/2014 07:55:46

    non sono d'accordo con te, nel file allegato non c'è una formula in AX9, comunque se non vuoi risolvere per me non cambia niente



  • di Rossella (utente non iscritto) data: 03/09/2014 10:32:24

    Scusami ma ho appena visto il file che ho allegato e non c'è la formula, è stato un mio sbaglio; ora riallego il file con la formula.



  • di lepat (utente non iscritto) data: 03/09/2014 14:01:50

    prova così
     
    Private Sub Worksheet_Calculate()
    If [F11] = 0 Then
    MsgBox "Aggiornare!"
    End If
    End Sub



  • di Rossella (utente non iscritto) data: 03/09/2014 15:52:45

    Ok, ora funziona. Grazie 1k