Benvenuto Ospite Cerca | Topic Attivi | Utenti | | Log In | Registra

[Excel 2007]- finestra di Avviso Opzioni
aetio
Inviato: Friday, September 24, 2010 5:33:11 PM

Rank: AiutAmico

Iscritto dal : 5/10/2010
Posts: 723
Ciao,
ormai non passa giorno che non abbia qualcosa da chiedere... ahahahah
A parte gli scherzi...... Quando sarò in grado di contraccambiare?!?

Nei file delle mie tabelle ho inserito dei pulsanti per far partire le varie macro, ma ci sono alcune volte che per delle specifiche ragioni un pulsante non debba essere premuto se prima non se ne ha premuto un altro che si trova in linea. Vorrei per questo poter mettere un Avviso anche acustico (anche quelli di default vanno bene) che impedisca di eseguire una macro se prima non è stata eseguita un'altra... (della serie: a prova di imbecille ajahahahajajajahah)
E' una cosa fattibile?
Grazie assai e buona serata,
eZio
Sponsor
Inviato: Friday, September 24, 2010 5:33:11 PM

 
a10n11
Inviato: Friday, September 24, 2010 6:14:07 PM

Rank: AiutAmico

Iscritto dal : 5/29/2003
Posts: 1,694
salve
per fare quello che chiedi, serve che la prima macro lasci un segno della sua esecuzione.
Non conoscendo come le due macro si collegano, la soluzione più naturale è che lanciando la prima macro, venga registrato in una cella remota del foglio il segno della sua esecuzione, e nella seconda macro mettere un controllo puntato alla cella "sentinella".
un esempio che dovrai adattare alle tue macro:

Sub primaMacro()
' qui il tuo codice
'.....................
' in fondo alla macro aggiungi questa riga

Sheets("Foglio1").Cells(65536, 256).Value = 1
End Sub




Sub secondaMacro()
'In testa alla macro:
If Sheets("Foglio1").Cells(65536, 256) = 0 Then
MsgBox ("ATTENZIONE!!!" & vbCrLf & _
"Non è stata eseguita la macro iniziale")
Exit Sub
End If

'qui procede il tuo codice
'................
' in fondo alla macro aggiungi questa riga:
Sheets("Foglio1").Cells(65536, 256).Value = 0
End Sub


Praticamente la prima macro scrive (1) nella cella IV65536, la seconda azzera il valore.

saluti
Giap

aetio
Inviato: Friday, September 24, 2010 10:48:45 PM

Rank: AiutAmico

Iscritto dal : 5/10/2010
Posts: 723
Ciao,
Grazie!! davvero una bella dritta......
Buona notte,
eZio

EDIT.
dato che prima di fare le operazioni richieste la 2^macro aggiunge una riga sopra alla prima scritta, per cui ogni volta la cella in questione (la IV65536) incrementa di 1, in coda alla 2^macro ho aggiunto l'istruzione
Range("IV65536:IV65537").ClearContents
così mi ripulisce le celle ogni volta... ;))
Utenti presenti in questo topic
Guest


Salta al Forum
Aggiunta nuovi Topic disabilitata in questo forum.
Risposte disabilitate in questo forum.
Eliminazione tuoi Post disabilitata in questo forum.
Modifica dei tuoi post disabilitata in questo forum.
Creazione Sondaggi disabilitata in questo forum.
Voto ai sondaggi disabilitato in questo forum.

Main Forum RSS : RSS

Aiutamici Theme
Powered by Yet Another Forum.net versione 1.9.1.8 (NET v2.0) - 3/29/2008
Copyright © 2003-2008 Yet Another Forum.net. All rights reserved.