Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17
  1. #1

    popup in excel

    Giorno a tutti...

    chi è cosi gentile da dirmi se si può fare questo in un foglio excel... sto impazzendo senza riuscirci

    cella A1 funzione adesso essressa in h,mm,ss (quindi che cambia ad ogni variazione dato)
    cella A2 ora inserita a mano espressa in h,mm
    cella A3 con menu a tendina Si/No

    io ho bisogno che:

    se A1 > A2 e A3=No deve comparire un popup con un determinato messaggio
    se A1 >A2 e A3=Si non deve comparire nulla

    VVoVe:

    Spero di essere stato spiegato
    Aspetto un genio che risolva questo mistero misterioso...

    Grazie1000

  2. #2
    non sono un genio, purtroppo, ma rispondo lo stesso

    per ottenere questo risultato devi entrare in ambiente VBA (Visual Basic)

    non so che Excel hai... col vecchio devi visualizzare il menu Visual Basic e poi cliccare se ben ricordo sulla seconda icona dall' alto

    col 2007 devi cliccare sul Pulsante di Office, aprire le Opzioni di Excel, scegliere Impostazioni generali e quindi selezionare la casella di controllo "Mostra scheda Sviluppo sulla barra multifunzione"

    Una volta che hai la scheda di Sviluppo seleziona Visual Basic e poi nella parte a sinistra della nuova finestra che apparirà (Progetto) doppio click su Foglio1 o sul foglio che stai usando

    a destra apparirà, se già non c' è, la scheda dove potrai inserire il codice

    nella tendina in alto (dovrebbe apparire la scritta (generale)) seleziona Worksheet per fare apparire gli eventi del foglio nella tendina alla sua destra

    seleziona l' evento Change dalla tendina a destra

    apparirà in automatico la relativa Sub routine

    Private Sub Worksheet_Change(ByVal Target As Range)

    End Sub


    dentro questa routine incolla il seguente codice:

    Select Case ActiveSheet.Range("a3").Value
    Case "no"
    If ActiveSheet.Range("a1").Value > ActiveSheet.Range("a2").Value Then
    MsgBox ("il mio messaggio")
    End If
    Case Else
    'non fa nulla
    End Select


    bye!

  3. #3
    Grazie Ezio...

    smanettando però mi sono reso conto che mi sarebbe molto più utile che il messaggio di popup mi appaia quando....

    nell'intervallo a1:a10 ho una serie di orari messi da me.... :berto:

    nellintervallo b1:b10 ho un menu a tendina con si/no :quote:

    ecco il messaggio dovrebbe comparire se:

    L'ora di sistema è maggiore dell'ora nelle celle a1:a10 se nella corrispondente cella b1:b10 c'è la scritta NO...

    esempio sono le 12:00 all'orario di sistema nella cella A3 ho inserito "12:00" e in b3 "no" allora deve comparire il messaggio se invece in a4 "12:00" ma in b4 c'è "si" non deve comparire nulla... ho office 2003...

    Grazie 1000

  4. #4
    beh, ma a questo punto il sistema-popup non ha senso!!!

    pensavo il tuo fosse un esercizio più teorico che pratico... aumentando il numero di celle che senso pratico ha trovarti magari con 5 o 6 popup uno dietro l' altro????

    nella cella C1 inserisci il seguente codice

    =SE(B1="no";SE(ADESSO()>A1;"Il mio messaggio";"");"")

    copia e incolla la formula in tutte le celle della colonna C che ti servono, formatta le celle in rosso e in grassetto, magari aumenta la dimensione dei caratteri... e fai a meno dei popup

  5. #5
    In realtà è leggermente più complicata la cosa...

    ho un foglio excel

    col. E17:E150 ho le celle ora (fissa che non cambia) inserica con ctrl+Maiusc+:
    col. F17:F150 Nome e cognome da inserire digitandoli
    col. G17:G150 un numero con menu a discesa da 1 a 30
    col. H17:H150 un nome con menu a discesa
    col. I17:I150 altro nome con menu a discesa
    col. J17:J150 idem
    col K17:K150 menu scelta SI/NO
    col L17:L150 orario da inseiremanualmente... solitamente maggiore di A1 ma minore dell'ora corrente...

    a me servirebbe un pop up che controlli proprio questa ultima colonna e appena L risulterà= all'orario di sistema e la cella K corrispondente è su "NO" deve avvisarmi con un messaggio di popup magari che mi indichi a quale riga fa riferimento... se invece la cella "K" invece è si non deve apparire nulla...

    sono stato spiegato?

    Ciao e grazie....

  6. #6
    il fatto che le letture siano molte rende ancora meno logico l' utilizzo di un popup in un foglio elettronico che ha nei filtri la corretta soluzione al problema

    ma se proprio popup deve essere... che popup sia, anche se una routine for... next per una ricerca tra le celle in excel è tutto meno che veloce.

    inserire adesso() in A1 è inutile:


    for x = 17 to 1000

    y = trim(str(x))

    dato = ActiveSheet.Range("k" + "y")).Value

    if dato = "" then exit for

    if dato = "no" then

    If adesso() > ActiveSheet.Range("L" + "y").Value Then
    MsgBox ("occhio alla riga " + "y" +"!!!!")
    End If

    end if

    next x

    bye

  7. #7
    nothing... non me funzia

    azz... pensavo fosse una cosa semplice... ma a questo punto mi sto per arrendere...

    riprovo a riformulare la domanda... in un foglio excel

    esempio...
    nella colonna "A" io manualmente inserisco deglio orari
    (in questi orari devo svolgere un determinato compito)

    nella colonna B metto Si/No in base al fatto di averli svolti oppure no...

    il messaggio deve comparire solamente se a quella determinata ora (segnata in una cella "A") la cella corrispondente in "B" è NO (cioè vuol dire che quella azione non l'ho ancora fatta...) se invece c'è "Si" non deve succedere nulla...

    Spero di essere stato un po piu chiaro...
    ciao e grazie per la pazienza dimostrata!

  8. #8
    Originariamente inviato da totygno71
    nothing... non me funzia

    azz... pensavo fosse una cosa semplice... ma a questo punto mi sto per arrendere...

    riprovo a riformulare la domanda... in un foglio excel

    esempio...
    nella colonna "A" io manualmente inserisco deglio orari
    (in questi orari devo svolgere un determinato compito)

    nella colonna B metto Si/No in base al fatto di averli svolti oppure no...

    il messaggio deve comparire solamente se a quella determinata ora (segnata in una cella "A") la cella corrispondente in "B" è NO (cioè vuol dire che quella azione non l'ho ancora fatta...) se invece c'è "Si" non deve succedere nulla...

    Spero di essere stato un po piu chiaro...
    ciao e grazie per la pazienza dimostrata!
    Ciao !
    Allora proviamo cosi'...
    Nella riga 1 del foglio metti l'intestazione delle colonne, tipo: "Ora | Fatto", e a partire dalla riga 2 i dati, nella colonna A gli orari (in formato cella "Ora": 13.30), in colonna 2 il flag "Si/No", magari utilizzando "Convalida dati/seleziona da elenco", per mantenere una formattazione univoca (ed evitare che "No" venga riconosciuto, mentre "no" non lo sia !).

    Poi metti nel codice del foglio una routine dell'evento Calculate, tipo questa:
    codice:
    Private Sub Worksheet_Calculate()
       Dim r As Integer, c As String
       r = 2 'prima riga contenente gli orari
       Do
          c = Format$(Cells(r, 1), "hh.nn")
          If c = "" Then Exit Do
          If Cells(r, 2) = "No" Then
             If CDate(Date & " " & c) < Now Then
                Rows(r).EntireRow.Select
                MsgBox "SCADUTO alle " & c & "  !!!!!!!!!!"
                Cells(r, 2) = "Si"      'dopo il msg, disabilita
             End If
          End If
          r = r + 1
       Loop
    End Sub
    ...a me pare funzionare, certo non garantisco nulla , soprattutto se in colonna A si scrive qualcosa di diverso da un orario, ecc...


    P.S.: tieni conto che la routine viene eseguita AD OGNI modifica di una QUALUNQUE cella, quindi (come anche diceva "eziogsv") non e' proprio l'ideale, come sistema, se ci sono molti orari da controllare....
    IceCube_HT (VB6 fan Club)

  9. #9



    non funzia, non funzia, non funzia...

    grazie lostesso, a questo punto ci rinuncio....

  10. #10
    Originariamente inviato da totygno71



    non funzia, non funzia, non funzia...

    grazie lostesso, a questo punto ci rinuncio....
    Ma come "non funzia" ?

    Sul mio sistema "funzia" ! (Excel 2003)

    Purtroppo su questo forum non si possono allegare i file .xls, sarebbe stato piu' semplice...
    Ad esempio non posso sapere COME scrivi gli orari, se prevedo un formato "13.30" e tu scrivi "13,30" o altro :rollo: , potrebbe non funzionare...

    Comunque il problema e' molto semplice, non dovrebbe essere difficile farlo funzionare... poi che un MsgBox sia il sistema migliore per avvisare.... e' un altro discorso !

    Ciao.
    IceCube_HT (VB6 fan Club)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.